Sisteme de operare pentru Raspberry Pi SISTEME DE OPERARE AVANSATE Sisteme de operare pentru Raspberry Pi Conducător științific: Masterand: Conf. Dr. Ing. Stefan Stăncescu Ing. Ignat D. Mihai
Sisteme Embedded Microcontroler= UCP+memorie integrata +/- interfața cu periferice Primele microcontrolere: Intel 4004 și Intel 8008 – anii 1970 Aplicații: ceasuri digitale, MP3 playere, control fabrică, vehicule hibride, sisteme de navigatie pentru aviație, etc.
Exemple sisteme embedded LaunchPad MSP430 de la Texas Instruments, Wiring S, Picaxe-28X2, Netduino, TinyDuino, Raspberry Pi, Beaglebone, Arduino, etc.
Raspberry Pi SBC – Single Board Computer Compus dintr-un SoC Broadcom BCM2835, care include un procesor de tip ARM1176JZF-S, funcționând la 700 MHz, un GPU VideoCore IV si 256 MB de memorie RAM (rev 1), respectiv 512 MB de memorie RAM (rev 2). Două modele: Modelul A – un singur port USB, fără Ethernet Modelul B – două porturi USB și conectivitate Ethernet
Proiecte Raspberry Pi
Sisteme de operare disponibile pentru Raspberry Pi Raspbian, RaspBMC, Pidora, RISC OS, Gentoo Linux, FreeBSD, NetBSD, Plan 9, Slackware Linux,Android, Firefox OS, OpenELEC, XBMC, etc.
Kernelul Linux Multe dintre sistemele de operare enumerate sunt derivate din Linux, ca de exemplu Raspian, RaspBMC, ArchLinux, Pidora, etc. Structura unui sistem Linux și a kernelului respectiv este următoarea:
Raspian Sistem de operare optimizat pentru setul de instrucțiuni al arhitecturii ARMv6, pe care se bazează microcalculatorul Raspberry Pi. Acesta derivă din sistemul de operare Debian 7 “Wheezy”. Numele “Raspian” reprezintă un joc de cuvinte dintre Raspberry si Debian. Acest sistem de operare oferă peste 35000 de pachete software precompilate si usor de instalat, optimizate pentru a rula pe hardware-ul ARM11 al Raspberry Pi.
RaspBMC Distribuție minimă bazată pe Debian care aduce funcționalitățile sistemului de operare pentru echipamente multimedia XBMC lui Raspberry Pi. Open-source Redare Full HD. Suport pentru HTTP, FTP, USB, NFS Sistemul foloseste 3 partiții [10]: /dev/mmcblk0p1, de tip fat32, /dev/mmcblk0p2, de tip linux-swap, /dev/mmcblk0p3, de tip ext4. Compatibil i386, pentru microprocesoare care se bazează pe arhitectura Intel 80386. Kernelul si firmware-ul pentru RaspBMC au următoarele locații in sistemul de fisiere: • /opt/vc, • componente pentru bootare precum start.elf si bootcode.bin, • modulele de kernel (/usr/lib/).
ArchLinux ARM Arch Linux ARM reprezintă o portare a sistemului Arch Linux pentru procesoarele ARM, in particular pentru Raspberry Pi. Acest sistem oferă suport pentru seturile de instrucțiuni ARMv5te soft-float si ARMv6 si v7 hard-float. Suport pentru sisteme de fișiere ext2, ext3, ext4, NTFS, ZFS, XFS, JFS, exFAT, btrFS
RISC OS Proiectat de Acorn Computers pentru a fi rulat în special pe procesoare ARM Single user cu multitasking cooperativ (CMT) sau time-sharing (divizare in timp) Kernelul sistemului RISC OS este de tip single-tasking (un singur task), CMT fiind oferit de modulul WindowManager si poate controla intreruperile, serviciile DMA, alocarea memoriei si afișarea video. Versiunea portată a RISC OS pentru Raspberry Pi este o versiune în curs de dezvoltare, care, in acest stagiu, este formată din trei componente: Un strat de abstractizare hardware pentru SoC-ul Broadcom BCM2835 O versiune modificată a kernelului care oferă suport pentru nucleele CPU ARMv6 Module adiționale de drivere
Comparație Aplicații disponibile: Raspian (35000+), RaspBMC (aprox. 20000), ArchLinux (aprox. 4600) Integrare în aplicații embedded (dimensiune redusă, facilități disponibile): Raspian (suport pentru C, Python, Perl, etc.), ArchLinux, RISC OS (spațiu ocupat foarte redus – aprox. 6 MB)
Concluzii Raspberry Pi a adus un aport semnificativ industriei. Dezvoltările ulterioare vor include calculul paralel (ex. Parallela) Specificații Parallela: Unitatea centrală de procesare ARM A9 dual-core din seria Zynq-7000 (Z-7010 or Z-7020) Un accelerator multinucleu Epiphany cu 16 sau 64 de nuclee 1 GB RAM 4 conectori de expansiune de uz general suport pentru Linux
Va mulțumesc pentru atenție! Bibliografie: http://en.wikipedia.org/wiki/Embedded_system http://en.wikipedia.org/wiki/Raspberry_Pi http://elinux.org/RPi_Distributions http://www.makeuseof.com/tag/7-operating-systems-you-can-run-with-raspberry-pi/ http://makezine.com/magazine/make-36-boards/which-board-is-right-for-me/ Anatomy of the Linux kernel – History and architectural decomposition – M. Tim Jones http://www.ibm.com/developerworks/library/l-linux-kernel/ http://www.raspbian.org/RaspbianAbout Getting Started with Raspberry Pi - Matt Richardson, Shawn Wallace http://www.raspbmc.com/about/ http://archlinuxarm.org/platforms/armv6/raspberry-pi https://wiki.archlinux.org/index.php/Table_of_Contents http://en.wikipedia.org/wiki/RISC_OS https://www.riscosopen.org/wiki/documentation/show/Hardware%20Abstraction%20Layer http://www.raspberrypi.org/phpBB3/viewtopic.php?f=55&t=22093 https://hylobatidae.org/?action=articlelist&article_start=60 http://www.techradar.com/news/software/operating-systems/raspberry-pi-operating-systems-5- reviewed-and-rated-1147941 http://www.adapteva.com/products/parallella/parallella/