Imie i nazwisko Nr indeksu Liczba punktów: Ramki oznaczone kolorem żółtym należy uzupełnić odpowiednią informacją! Po zakończeniu ćwiczenia niniejszą formatkę należy wysłać na adres: iwona.kochanska@eti.pg.gda.pl Przebieg labororatorium: Uruchomienie Raspberry Pi Badanie wydajności systemu Raspbian Badanie wydajności systemu Raspbian ze zmodyfikowanym jądrem (włączone wywłaszczanie wątków). Logowanie do systemu operacyjnego hosta (OS Linux Debian): LOGIN: student HASŁO: student* Uruchomienie Raspberry Pi 1. Sprawdź, czy w odpowiednim złączu na płycie Rpi znajduje się karta pamięci. Na niej znajduje się system operacyjny Raspbian. 2. Podłącz kabel ethernet do gniazda na płycie Rpi 3. Podłącz zasilanie do komputera Raspberry Pi (kabel USB między PC a Rpi). 4. Podłącz przewody kabla RS-232 (TTL) do pinów GPIO jak pokazano na rysunku. Posłuży on do komunikacji z Rpi w celu odczytania adresu IP, jaki Rpi dostał od serwera dhcp. 5. Uruchom program putty: $sudo putty
6. W okienku GUI wybierz połączenie szeregowe. Aby sprawdzić nazwę pliku odpowiedzialnego za sterownik portu szeregowego, odczytaj ostatnie komunikaty jądra: $sysctl -w kernel.dmesg_restrict=0 $dmesg Jednym z ostatnich komunikatów powinno być: pl2303 converter now attached to XXX (nazwa pliku sterownika) Ustawienia w okienku GUI powinny wyglądać następująco: gdzie ttyusb0 jest nazwą pliku sterownika portu szeregowego. 7. Odczytaj adres IP: Połącz się z Rpi za pomocą ssh w terminalu na komputerze hosta. Login: pi, hasło: raspberry: $ ssh pi@192.168.1.xxx (XXX ostatnie 3 cyfry nr IP) Badanie wydajności systemu Raspbian Wszystkie polecenia powinny być wykonywane w systemie Raspbian uruchomionym na komuterze Raspebrry Pi. 1. Sprawdź następujące parametry systemu Raspbian z jądrem w domyślnej konfiguracji, otrzymanej od prowadzącego na karcie SD.
Wersja jądra systemu operacyjnego $ uname -a Rozmiar obrazu jądra (plik kernel7.img) $ cd /boot $ ls -la Sumaryczny rozmiar modułów jądra $ /lib/modules/4.4.11-v7+ $ du -sh Lista załadowanych modułów jądra oraz ile miejsca w pamięci one zajmują $ lsmod Liczba procesów działających w systemie (wszystkich/aktywnych/uśpionych) Ilość pamięci zajmowanej przez procesy w systemie Średnia ilość pamięci: dostępnej/w obszarze swap /tymczasowej cache (w czasie 5 sekund)
Średnia liczba przerwań na sekundę (w czasie 5 sekund) Średni procentowy udział czasu pracy procesora na wykonywaniu procesów użytkowników / zadań jądra (w czasie 5 sekund) Badanie wydajności systemu Raspbian ze zmodyfikowanym jądrem (włączone wywłaszczanie wątków) Pobierz plik archiwum rpi_linux.zip ze strony: http://git.eti.pg.gda.pl/intel-grant/pliki Rozpakuj je $ cd ~/Pobrane $ unzip rpi_linux.zip W katalogu linux znajduje się jądro oraz moduły jądra systemu Raspbian skompilowane w konfiguracji z wywłaszczaniem wątków. Wyjmij karte SD z Rpi I podłącz ją poprzez adapter do slotu USB w komputerze hosta. Sprawdź, jaką nazwę otrzymała w systemie hosta: $sysctl -w kernel.dmesg_restrict=0 $dmesg 1. Instalacja plików w systemie plików na karcie SD W katalogu linux utwórz katalog mnt, a w nim katalogi: fat32 i ext4. Następnie zamontuj w nich obie partycje karty SD z systemem Raspbian, podłączonej do komputera hosta: $ mkdir mnt $ mkdir mnt/fat32 $ mkdir mnt/ext4
Montowanie pierwszej partycji karty SD w katalogu fat32: $ sudo mount /dev/sdb1 mnt/fat32 Montowanie drugiej partycji karty SD w katalogu ext4: $ sudo mount /dev/sdb2 mnt/ext4 Usuń moduły jądra z karty SD: $ rm -R mnt/ext4/lib/modules/* Instalacja nowych modułów jądra (polecenie poniżej do jedna linia tekstu!): $ sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=mnt/ext4 modules_install Kopiowanie obrazu jądra oraz drzewa urządzeń: $ KERNEL=kernel7 $ cp mnt/fat32/$kernel.img mnt/fat32/$kernel-backup.img scripts/mkknlimg arch/arm/boot/zimage mnt/fat32/$kernel.img $ cp arch/arm/boot/dts/*.dtb mnt/fat32/ $ cp arch/arm/boot/dts/overlays/*.dtb* mnt/fat32/overlays/ $ cp arch/arm/boot/dts/overlays/readme mnt/fat32/overlays/ Odmontowanie systemu plików: $ umount mnt/fat32 $ umount mnt/ext4 Sprawdź następujące parametry systemu Raspbian z jądrem w zmienionej konfiguracji, otrzymanej od prowadzącego na karcie SD. Wersja jądra systemu operacyjnego $ uname -a Rozmiar obrazu jądra (plik kernel7.img) $ cd /boot $ ls -la Sumaryczny rozmiar modułów jądra $ /lib/modules/4.4.11-v7+ $ du -sh
Lista załadowanych modułów jądra oraz ile miejsca w pamięci one zajmują $ lsmod Liczba procesów działających w systemie (wszystkich/aktywnych/uśpionych) Ilość pamięci zajmowanej przez procesy w systemie Średnia ilość pamięci: dostępnej/w obszarze swap /tymczasowej cache (w czasie 5 sekund) Średnia liczba przerwań na sekundę (w czasie 5 sekund) Średni procentowy udział czasu pracy procesora na wykonywaniu procesów użytkowników / zadań jądra (w czasie 5 sekund) Wersja jądra systemu operacyjnego $ uname -a
Rozmiar obrazu jądra (plik kernel7.img) $ cd /boot $ ls -la Sumaryczny rozmiar modułów jądra $ /lib/modules/4.4.11-v7+ $ du -sh Lista załadowanych modułów jądra oraz ile miejsca w pamięci one zajmują $ lsmod Liczba procesów działających w systemie (wszystkich/aktywnych/uśpionych) Ilość pamięci zajmowanej przez procesy w systemie Średnia ilość pamięci: dostępnej/w obszarze swap /tymczasowej cache (w czasie 5 sekund)
Średnia liczba przerwań na sekundę (w czasie 5 sekund) Średni procentowy udział czasu pracy procesora na wykonywaniu procesów użytkowników / zadań jądra (w czasie 5 sekund) WNIOSKI Z PORÓWNANIA WYNIKÓW UZYSKANYCH DLA OBU WERSJI JĄDRA