Embedded Gnu

673 views
631 views

Published on

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

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
673
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Embedded Gnu

  1. 1. embedded GNU/Linux for dummies
  2. 2. Проекта <ul><li>Основни положения </li></ul><ul><li>Необходимости </li></ul><ul><li>Изисквания </li></ul><ul><li>Налични материали </li></ul><ul><li>СРОК – 45 дена – ЕП Варна 2005 </li></ul>
  3. 3. Схема <ul><li>Секретариат </li></ul><ul><li>Управляващи лаптопи </li></ul><ul><li>Табла </li></ul>Главен компютър (секретариат) Лаптоп 1 Лаптоп 2 Лаптоп 3 Табло 1 Табло 2 Табло 3 Лаптоп 4 Табло 4
  4. 9. Обзор <ul><li>Управляващ лаптоп </li></ul><ul><li>OS – Windows </li></ul><ul><li>Софтуер – наш </li></ul><ul><li>Хардуер – вече закупен </li></ul><ul><li>Табло </li></ul><ul><li>OS – неизвестна </li></ul><ul><li>Софтуер – зависи от OS </li></ul><ul><li>Хардуер – зависи от OS </li></ul><ul><li>Монитори – вече закупени </li></ul>
  5. 10. Embedded OS <ul><li>DOS </li></ul><ul><li>OS/2 </li></ul><ul><li>Windows 98/XP </li></ul><ul><li>Embedded Windows CE </li></ul><ul><li>Embedded Windows XP </li></ul><ul><li>VxWorkx, QNX </li></ul><ul><li>GNU/Linux </li></ul>
  6. 11. GNU/Linux <ul><li>Kernel space </li></ul><ul><li>Kernel </li></ul><ul><li>Drivers </li></ul><ul><li>Firmware </li></ul><ul><li>User space </li></ul><ul><li>Libraries – libc, libpng, libjpeg </li></ul><ul><li>Applications – ls, X, Perl, OpenOffice </li></ul><ul><li>Demons – OpenSSH, Apache, imapd </li></ul>
  7. 12. GNU/Linux <ul><li>FAT GNU/Linux </li></ul><ul><li>По-бърз процес на компилация </li></ul><ul><li>По-големи системни изисквания </li></ul><ul><li>Загуба на контрол върху системата </li></ul><ul><li>Thin GNU/Linux </li></ul><ul><li>По-сложен процес на компилация </li></ul><ul><li>Минимални изисквания </li></ul><ul><li>Стриктен контрол върху системата </li></ul>
  8. 13. Ядро <ul><li>Премахване на излишните неща </li></ul><ul><li>Оптимизиране за конкретен хардуер </li></ul><ul><li>/dev или devfs </li></ul><ul><li>Monolitic или Modular </li></ul>
  9. 14. Библиотеки <ul><li>libc – glibc </li></ul><ul><li>Не е библиотека, ами е Библиотеката </li></ul><ul><li>Намира се навсякъде </li></ul><ul><li>Голяма ~ 2MB </li></ul><ul><li>Никакви особенности при компилация </li></ul><ul><li>Никакви особенности при свързване </li></ul><ul><li>uClibc </li></ul><ul><li>Олекотена библиотека </li></ul><ul><li>Намира приложение в embedded системите </li></ul><ul><li>Малка ~500KB </li></ul><ul><li>Компилира се особенно (toolchain & buildroot) </li></ul><ul><li>Свързва се особенно </li></ul>
  10. 15. Оптимизации <ul><li>Статично или динамично свързване </li></ul><ul><li>Busybox </li></ul><ul><li>Собствен init скрипт </li></ul><ul><li>Компилиране (и оптимизиране) на X.org </li></ul><ul><li>Собствен скрипт за стартиране на X </li></ul><ul><li>Cramfs </li></ul>
  11. 16. Трудности <ul><li>Липса на информация </li></ul><ul><li>Трудно проследяване на зависимостите </li></ul><ul><li>Всичко трябва да се прекомпилира и свърже с uClibc </li></ul><ul><li>Крос компилация </li></ul><ul><li>Непрекъснати рестарти </li></ul>

×