1 / 32

Specjalizowane Aplikacje w Systemie UNIX

Specjalizowane Aplikacje w Systemie UNIX. Igor Bokun Krzysztof Zieliński Katedra Informatyki Akademia Górniczo-Hutnicza. Zakres wykładu. Wprowadzenie. Wybrane aspekty RTOS. Aplikacje RT w systemie SOLARIS- SUN MEDIA Center. Specjalizowane aplikacje w systemie Linux.

patia
Download Presentation

Specjalizowane Aplikacje w Systemie UNIX

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Specjalizowane Aplikacje w Systemie UNIX Igor Bokun Krzysztof Zieliński Katedra Informatyki Akademia Górniczo-Hutnicza

  2. Zakres wykładu Wprowadzenie Wybrane aspekty RTOS Aplikacje RT w systemie SOLARIS- SUN MEDIA Center Specjalizowane aplikacje w systemie Linux Aplikacja Abng-poller System Linux Piccolo Posumowanie

  3. Tendencje rozwoju RTOS Systemy Producenci SUN QNX Soft.Sys. RadiSys Mrcoware Sys. Chours Sys. CMU New Mexico Tech. Unv. O\of Arizona Solaris Spring QNX iRMX Lynx OS9 Chorus Chimera RT Mach RT Linux x-Kernel UNIX JavaOS

  4. Rozwój aplikacji Java Desktop OS Entr. Servers Mainframes RTOS Vendors Set-top boxes ScreenPhones Internet TV Car Navigation Industrial Controllers Printers Hi-end Pagers Java AE Personal Java AE SmartCards Java Ring Embedded Java AE Java Cards

  5. Model JavaOS

  6. Podstawowe cechy RTOS Model wątków Zarządzanie priorytetami Przełączanie kontekstu Zarządzanie pamięcią Urządzenia WE/WY Solaris

  7. Model wątków User Kernel Hardware = Processor = LWP

  8. Zarządzanie procesami Running sleep assign CPU preempt Sleeping in memory Runnable in memory wakeup swap out swap out swap in wakeup Runnable swapped Sleeping swapped

  9. Zarządzanie priorytetami Scheduler classes Run queues Global priority Scheduling order Class-speficic priorities First Highest Real-times priorities System priorities Time-sharing priorities Lowest Last

  10. Czas reakcji aplikacji External event Response to event Application response time Priority task Dispatch latency Interrupt response Interrupt processing Interrupt latency System save or restore registers Driver’s interrupt routine sends message to wake up sleeping process Returns from interrupt Reschedules to run highest priority task Calculates response Processor instruction or system in critical region

  11. Przełączanie kontekstu Internal event Response to event Application response time Priority task Dispatch latency Low-priority process releases resources or provide input for higher priority process Reschedules to run highest priority task Calculates response Dispatch latency około 1 msec Przełączanie wątku kilkaset razy szybsze

  12. Zarządzanie pamięcią Zagwarantowanie ciągłego obszaru obszaru pamięci dla wykonania procesu w pamięci operacyjnej. Memory Locking zapobiega wymianom stron mlock() mlockall() munlock() munlockall()

  13. Sun MediaCenter API MSM Client Media Stream Mngr. RPC Low- level Drivers Media F.S. content CM Client Content Mngr. RPC Video bit streams

  14. Platforma sprzętowa 50 GB SUN Media Center

  15. Scenariusze użycia SMC ATM Fast-E RPC SMC Switch Client workstation MPEG-1 or MPEG-2 Stream Set-top Box RPC SMC Switch Client workstation Set-top Box

  16. Scenariusze użycia SMC Zapamiętanie informacji RT MPEG kompresja ATM Fast-E RPC SMC Switch Client workstation MPEG-1 or MPEG-2 Stream Wizualizacja z opóźnieniem 2 s

  17. Video na żądanie SMC Do 50 strumieni Client workstation Client workstation Client workstation Client workstation Client workstation

  18. Interface użytkownika

  19. Specjalizowane zastosowanie systemu Linux Wykorzystanie systemu Linux do realizacji modułu poller systemu ActiveBadge Aplikacja Abng poller LinuxPiccolo - specjalizowana wersja systemu Systemy multimedialne wrażliwe na lokalizację użytkowników

  20. System Active Badge System Active Badge został zaprojektowany w Olivetti & Oracle Research Laboratory (ORL) w Cambridge. Celem projektu było stworzenie infrastruktury sprzętowej oraz programowej, umożliwiającej realizację aplikacji wrażliwych na lokalizację osób i przedmiotów. Przykładowe zastosowania systemu: Automatyczne otwieranie drzwi w momencie, gdy osoba uprawniona do wejścia do danego pomieszczenia zbliży się do drzwi. Automatyczne sterowanie oświetleniem na podstawie informacji o obecności osób w pomieszczeniu. Teleporting komputerowego środowiska pracy. Przejście osoby do innego pomieszczenia może spowodować przeniesienie środowiska graficznego na najbliższy komputer. Inteligentne rutowanie połączeń telefonicznych.

  21. Elementy sprzętowe systemu Aktywne plakietki noszone przez użytkowników systemu, bądź przytwierdzone do sprzętu Sensory rozmieszczone w pomieszczeniach, odbierające sygnały od plakietek. Komunikacja odbywa się za pośrednictwem podczerwieni.

  22. System Active Badge next generation System Active Badge, który powstał na początku lat dziewięćdziesiątych oparty jest o środowisko programowania rozproszonego ANSAWare. Biorąc pod uwagę rozwój w dziedzinie systemów rozproszonych, a w szczególności wprowadzenie i rozpowszechnienie standardu CORBA, zaistniała konieczność zaprojektowania nowoczesnego następcy systemu Active Badge. Active Badge next generation (ABng) jest rozproszonym, obiektowym systemem opartym o nowoczesną architekturę CORBA, w którym dużą uwagę skupiono na zagadnieniach skalowalności oraz elastyczności.

  23. Moduł ABng poller Jednym z elementów systemu Active Badge next generation jest ABng poller. Pełni on funkcje warstwy pośredniczącej pomiędzy sensorami a pozostałymi obiektami systemu. Jako platformę systemową do implementacji modułu wybrano system Linux.

  24. Linux na platformie PC/104 Architektura PC/104 została opracowana w 1992 roku w odpowiedzi na rosnące zapotrzebowanie na rozwiązanie zgodne ze standardową architekturą PC, dostosowane do zastosowań w tzw. systemach wbudowanych (embedded). • Podstawowe różnice pomiędzy urządzeniami PC/104 a tradycyjnymi PC: • zmniejszone wymiary (3.6”x3.8”) • niewielki pobór mocy (1-2 W na moduł) • inny standard złącza magistralowego, zapewniający większą niezawodność połączeń oraz możliwość łączenia modułów w stos Uruchomienie systemu operacyjnego Linux na komputerach opartych o architekturę PC/104 nie przysparza większych problemów. Ze względu na dostępność kodu źródłowego systemu oraz aplikacji, Linux stanowi bardzo elastyczną, dojrzałą oraz łatwą w rozbudowie platformę dla systemów typu embedded.

  25. Tryb pracy z wykorzystaniem Sieciowego Systemu Plików (NFS)

  26. Wykorzystanie dysków typu Flash Wykorzystanie NFS jest wygodne w początkowej fazie rozwoju systemu, kiedy występuje częsta aktualizacja plików (np. wskutek rekompilacji programu). Docelowo jednak urządzenie powinno być całkowicie niezależne od zewnętrznych serwisów. pomysł: umieścić obraz jądra systemu oraz root filesystem w pamięci Flash. W przypadku gdy istotna jest miniaturyzacja urządzenia, DiskOnChip firmy M-Systems wydaje się być optymalnym rozwiązaniem. wyzwanie: Ze względu na stosunkowo wysoką cenę dysków typu Flash należy zmodyfikować system Linux, by rozmiar jądra oraz systemu plików, wraz z aplikacjami nie przekroczył 6-8 MB -> LinuxPiccolo.

  27. Proces inicjalizacji systemu problem techniczny: DiskOnChip dostarczany jest wyłącznie ze sterownikami dla systemów DOS, QNX oraz Windows 95. rozwiązanie (tymczasowe?): Uruchomić system pod kontrolą „systemu” DOS. Umieścić w pamięci RAM obraz systemu plików wraz z aplikacjami, a następnie wykorzystując program loadlin rozpocząć inicjalizację systemu Linux. Po otrzymaniu sterowania system Linux stworzy RAM dysk, w którym umieści wprowadzony obraz systemu plików „przekazany” z poziomu DOSa. Podstawową wadą tego rozwiązania jest tryb pracy read-only. W przypadku aplikacji ABng poller, ograniczenie to jest akceptowalne. * w sierpniu 1998 firma M-Systems wprowadziła to beta testów sterowniki DiskOnChip dla systemu Linux

  28. Proces inicjalizacji systemu - schemat

  29. Zarządzanie za pośrednictwem WWW

  30. Urządzenie ABng poller

  31. Analiza przedstawionego rozwiązania • znaczne zmniejszenie gabarytów urządzenia • wyeliminowanie konsoli, konfiguracja urządzenia odbywa się poprzez sieć • mniejszy pobór mocy • wyeliminowanie części mechanicznych - zwiększenie niezawodności systemu • duża stabilność systemu Linux, dostępność dojrzałych implementacji standardu CORBA • niska cena

  32. Systemy multimedialne wrażliwe na lokalizację Połączenie rozwijanych w Katedrze Informatyki AGH systemów multimedialnych z infrastrukturą ABng daje możliwości prowadzenia badań nad nowym typem aplikacji: Aplikacji multimedialnych, wrażliwych na lokalizację użytkowników. Przykłady: Rozmieszczone w budynku kamery na bieżąco „śledzą” daną osobę, dostarczając za pośrednictwem sieci komputerowej obraz do centrum monitorowania. Aplikacje „follow me video”, w których sekwencje wideo „podążają” za zmieniającym lokalizację użytkownikiem.

More Related