embedded gnu

19
embedded GNU/Linux for dummies

Upload: kaloyan-tsvetkov

Post on 24-May-2015

539 views

Category:

Technology


7 download

DESCRIPTION

Автор: Петър Николовhttp://www.openfestruse.org/downloads/openfest08/embedded_GNU.ppt

TRANSCRIPT

Page 1: Embedded Gnu

embedded GNU/Linuxfor dummies

Page 2: Embedded Gnu

Проекта

• Основни положения

• Необходимости

• Изисквания

• Налични материали

• СРОК – 45 дена – ЕП Варна 2005

Page 3: Embedded Gnu

Схема

• Секретариат• Управляващи

лаптопи• Табла

Главен компютър (секретариат)

Лаптоп 1 Лаптоп 2 Лаптоп 3

Табло 1 Табло 2 Табло 3

Лаптоп 4

Табло 4

Page 4: Embedded Gnu
Page 5: Embedded Gnu
Page 6: Embedded Gnu
Page 7: Embedded Gnu
Page 8: Embedded Gnu
Page 9: Embedded Gnu

Обзор

Управляващ лаптоп

• OS – Windows• Софтуер – наш• Хардуер – вече закупен

Табло

• OS – неизвестна• Софтуер – зависи от OS• Хардуер – зависи от OS• Монитори – вече

закупени

Page 10: Embedded Gnu

Embedded OS

• DOS• OS/2• Windows 98/XP• Embedded Windows CE• Embedded Windows XP• VxWorkx, QNX• GNU/Linux

Page 11: Embedded Gnu

GNU/Linux

Kernel space

• Kernel• Drivers• Firmware

User space

• Libraries – libc, libpng, libjpeg

• Applications – ls, X, Perl, OpenOffice

• Demons – OpenSSH, Apache, imapd

Page 12: Embedded Gnu

GNU/Linux

FAT GNU/Linux

• По-бърз процес на компилация

• По-големи системни изисквания

• Загуба на контрол върху системата

Thin GNU/Linux

• По-сложен процес на компилация

• Минимални изисквания

• Стриктен контрол върху системата

Page 13: Embedded Gnu

Ядро

• Премахване на излишните неща

• Оптимизиране за конкретен хардуер

• /dev или devfs

• Monolitic или Modular

Page 14: Embedded Gnu

Библиотеки

libc – glibc

• Не е библиотека, ами е Библиотеката

• Намира се навсякъде

• Голяма ~ 2MB• Никакви особенности при

компилация• Никакви особенности при

свързване

uClibc

• Олекотена библиотека

• Намира приложение в embedded системите

• Малка ~500KB• Компилира се особенно

(toolchain & buildroot)• Свързва се особенно

Page 15: Embedded Gnu

Оптимизации

• Статично или динамично свързване

• Busybox

• Собствен init скрипт

• Компилиране (и оптимизиране) на X.org

• Собствен скрипт за стартиране на X

• Cramfs

Page 16: Embedded Gnu

Трудности

• Липса на информация

• Трудно проследяване на зависимостите

• Всичко трябва да се прекомпилира и свърже с uClibc

• Крос компилация

• Непрекъснати рестарти

Page 17: Embedded Gnu
Page 18: Embedded Gnu
Page 19: Embedded Gnu