J adro systemu OS 9 moduł kernel

Podobne dokumenty
Działanie systemu operacyjnego

Zarządzanie pamięcią operacyjną

Działanie systemu operacyjnego

Zarządzanie zasobami pamięci

Działanie systemu operacyjnego

Schematy zarzadzania pamięcia

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Działanie systemu operacyjnego

Mikroprocesor Operacje wejścia / wyjścia

Architektura komputerów

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych

Struktura systemów komputerowych

Zarządzanie pamięcią w systemie operacyjnym

Programowanie mikroprocesorów jednoukładowych

petla:... ; etykieta określa adres w pamięci kodu (docelowe miejsce skoku) DJNZ R7, petla

System plików. Warstwowy model systemu plików

Technologie informacyjne (2) Zdzisław Szyjewski

Zarządzanie pamięcią operacyjną

Komunikacja miedzy procesami w OS 9

Mikroinformatyka. Mechanizmy ochrony pamięci

Systemy operacyjne system przerwań

SYSTEM PRZERWA Ń MCS 51

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

System mikroprocesorowy i peryferia. Dariusz Chaberski

Architektura komputera

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]


Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1

aodczytywać zniegoza pomoc afunkcjiread, (niebuforowane funkcje wejścia/wyjścia). e sukcesem, to zwróci liczb, erzeczywiściezapisanychbajtów.

Ż Ę ć Ć ć ć Ą

Paradygmaty programowania

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/ / 22

Zarządzanie pamięcią operacyjną zagadnienia podstawowe

Technologia informacyjna. Urządzenia techniki komputerowej

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Budowa systemów komputerowych

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

Warstwy systemu Windows 2000

Tworzenie sterowników dla FreeBSD. Michał Hajduk

Urządzenia wejścia-wyjścia

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

System pamięci. Pamięć wirtualna

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych


SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.

PC0060. ADAPTER Kabel Easy Copy PC-Link USB 2.0 Proste kopiowanie, bez instalacji. Instrukcja obsługi

System komputerowy. System komputerowy

Mikroinformatyka. Tryb wirtualny

architektura komputerów w. 8 Zarządzanie pamięcią

Informatyka. informatyka i nauki komputerowe (computer science)

Jak wiemy, wszystkich danych nie zmieścimy w pamięci. A nawet jeśli zmieścimy, to pozostaną tam tylko do najbliższego wyłączenia zasilania.

Ś ć Ś Ę Ś Ś Ś Ś Ę Ę

Systemy Operacyjne - Operacje na plikach

Szkolenia specjalistyczne

SYSTEMY OPERACYJNE WYKLAD 6 - procesy

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Kurs Zaawansowany S7. Spis treści. Dzień 1

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

OPIS STEROWNIKA 821B USB

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Architektura komputerów

ś ś ź ć ć ż ż ść ź ś Ę ś ż ś ź ś Ę ż ż ć ś ś ź

Systemy operacyjne III

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces

organizacja procesora 8086

Struktury systemów operacyjnych Usługi, funkcje, programy. mgr inż. Krzysztof Szałajko

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci

ś ść ő ś ś ń Í ś Ż ś Ó ś ś ś Ż Ż Ż ś ść ść Ć Ż ś Ó Ć ś Ć Ć Ć ś ś ś ś Ż Ż ń ś

Ę ć Ę Ś

Od programu źródłowego do procesu

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

eć dzielona standardu POSIX

ć ą ą ć ą ź ć ą ą ć ą ć ń ą ą Ń Ń Ń

Współpraca procesora ColdFire z pamięcią

Architektura systemu komputerowego

Struktura i działanie jednostki centralnej

OS-9 modułowy, wielozadaniowy system czasu rzeczywistego

Struktury systemów operacyjnych

Magistrala systemowa (System Bus)

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Wstęp do informatyki. Interfejsy, urządzenia we/wy i komunikacja. Linie magistrali

QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:

Zarządzanie pamięcią. Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem.

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Urządzenia zewnętrzne

Laboratorium Systemów Operacyjnych. Ćwiczenie 4. Operacje na plikach

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

ć ź ć ć ć

Wykład 2. Struktury systemów komputerowych. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wprowadzenie do systemów operacyjnych

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

ć Ć Ś ć Ć ć ć ć Ć

Kurs Podstawowy S7. Spis treści. Dzień 1

Transkrypt:

OS-9 systemu OS 9 moduł kernel Podstawowe funkcje j adra systemu: zarz adzanie zasobami zarz adzanie prac a procesów zarz adzanie obsług a zdarzeń specjalnych i przerwań Realizowane i koordynowane usługi: usługi systemowe (np. F$Link): zarz adzanie pami eci a inicjalizacja systemu tworzenie procesów i zarz adzanie ich prac a obsługa zdarzeń specjalnych i przerwań usługi wejściowo wyjściowe (np. I$Open - odczyt, zapis,...) MW-ZPCiR-ICT-PWr 1

OS-9 Tryby pracy procesora Tryb użytkownika (user state) normalny tryb wykonywania kodu realizujacego proces: ograniczony dost ep do zasobów sprz etowych, zabezpieczenie przed uszkodzeniem danych systemowych (ochrona pami eci), łatwość przenoszenia aplikacji (niezależność od sprz etu). Tryb systemowy (system state) obsługa usług systemowych, przerwań, zasobów sprz etowych: pełny dost ep do zasobów (maskowanie przerwań, brak ochrony pami eci, uprzywilejowane rozkazy procesora), dost epność wyróżnionych usług systemowych, możliwość rekonfiguracji systemu. MW-ZPCiR-ICT-PWr 2

Metody instalowania procedur trybu SYSTEM (dost epne tylko dla użytkowników z grupy 0 ) 1. Przez umieszczenie modułu OS9P2 w obrazie ładowanym przy starcie, lub w ROM. Przy restarcie systemu, kernel uruchamia ten moduł od M$Exec, co pozwala zainstalować nowe procedury poprzez usług e F$SSvc. 2. Przez system wejścia wyjścia (za pomoc a własnego, pozornego driver-a, z którego można wykorzystać np. I$GetStt. 3. Przez moduł obsługi przerwań programowych TRAP #1..14 (Trap Handler). 4. Przez ustawienie bitu supervisor w M$Attr modułu programowego, który jest własności a grupy 0. MW-ZPCiR-ICT-PWr 3

Wybrane usługi trybu USER moduły pami eć procesy inne F$CRC F$AllBit F$Alarm F$Icpt F$DatMod F$CpyMem F$Chain F$RTE F$GModDir F$DelBit F$Event F$SetSys F$link F$Mem F$Fork F$TLink F$Load F$SchBit F$GPrDBT F$CmpNam F$SetCRC F$SRqCMem F$GPrDsc F$PrsNam F$UnLink F$SRqMem F$ID F$PErr F$UnLoad F$SRtMem F$Send F$Gregor F$Trans F$Sigmask F$Julian F$Sleep F$STime F$SPrior F$Time F$SSpol F$SUser F$UAcct F$Wait MW-ZPCiR-ICT-PWr 4

Wybrane usługi trybu SYSTEM moduły pami eć procesy inne F$ VModul F$Move F$Alarm F$IRQ F$AllPD F$SSvc F$AllPrc F$AProc F$DelPrc F$FindPD F$IOQn F$NProc F$Panic F$RetPD MW-ZPCiR-ICT-PWr 5

Dost ep do usług systemu OS 9 W asemblerze: przez makro: OS9 <kod> realizowane jako: TRAP #0 ;przerwanie programowe DC.W F$Link ;kod uslugi d0.w = kod typu/j ezyka (0 = dowolny) (a0) = wskaźnik nazwy modułu Wyniki poprawne: d0.w = kod typu/j ezyka d1.w = atrybuty/wersja modułu (a1) = adres punktu startowego modułu (a2) = adres pocz atku nagłówka modułu Wyniki przy bł edzie: cc = ustawiony bit Carry d1.w = kod bł edu W j ezyku C: przez funkcje biblioteczne: #include <module.h> mh_com *modlink(char *modname, int typelang); MW-ZPCiR-ICT-PWr 6

OS-9 (a6)! #"$ %#& (' )"$ * " * ' & +,"$ -.#/.10325467!89 : * " * &!;: *=< ' 1+>"$ @?A"3: BDC3BDEGFIH POQ?R' * " S?T)'POL:U? VWX)Y[Z]\)^L_3` + *)a b3 a OU #"$ VWX)Y[Z]\)^L_3` a 3Oc: *=< : d efgqhi.7j89 kmlonmprqts kmlontuwvyx zwzwz {wl} ~ yq kmlonmprqts kmlontuwvyx zwzwz {wl} ~ yq : * " * &!;: *=< ' 1+>"$ @?A"3: JKBLFNM POQ?R' * " S?T)'POL:U? VWX)Y[Z]\)^L_3` + *)a b3 a OU #"$ VWX)Y[Z]\)^L_3` a 3Oc: *=< : d efgqhi.7j89 kmlonmprqts kmlontuwvyx zwzwz {wl} ~ yq kmlonmprqts kmlontuwvyx zwzwz {wl} ~ yq MW-ZPCiR-ICT-PWr 7

Instalowanie usług systemowych OS9 F$SSvc Parametry: (a1) = adres tablicy inicjalizacji usługi (a3) = globalny wskaznik danych dla usługi Wynik bł edny: cc = ustawiony bit Carry d1.w = kod bł edu (errno) Struktura tablicy: SvcTbl dc.w F$Service ;kod uslugi (U+S) dc.w Routine-*-2 ;adres procedury dc.w F$Service+SysTrap ;kod uslugi (tylko S) dc.w SysRoutn-*-2 ;adres procedury... dc.w -1 ;koniec tablicy MW-ZPCiR-ICT-PWr 8

Zasady konstrukcji procedury usługowej Interpretacja rejestrów na wejściu: (a3) = wskaznik danych dla usługi (ustawiony przez F$SSvc) (a4) = adres deskryptora bież acego procesu (a5) = adres obrazu rejestrów użytkownika (a6) = adres systemowych danych globalnych Wyjście poprawne: cc = ustawiony bit Carry Wyjście przy bł edzie: cc = zerowy bit Carry d1.w = kod bł edu (errno) MW-ZPCiR-ICT-PWr 9

OS-9 Pamieć Zarz adzanie pami eci a w OS 9 uwzgl ednienie konfiguracji pami eci: pami eć kolorowana (colored memory) atrybuty obszarów pami eci priorytety obszarów pami eci dynamiczne przydzielanie ( srqmem(), F$SRqMem) i zwalnianie ( srtmem(), F$SRtMem) pami eci - algorytm First Fit z uwzgl ednieniem priorytetu fizyczne adresowanie pami eci w trybach rejestrowych (brak pami eci wirtualnej i mechanizmu scalania obszarów) możliwość ochrony pami eci przed dost epem z innego procesu (ssm - System Security Module) MW-ZPCiR-ICT-PWr 10

Pamieć Š Œ Ž Œ! # Ž( ) # Š 1 > š #œ1 1 ž Ÿ 3 j Š Œ Ž Œ T Ž( P Ž L T [ tª «R PŠ L! tª Ž( P Ž ƒ ) U ˆ»U»U» ¼ 1ƒQ Q ¼ ±²U² ¼ 1ƒ ½U =ˆ ¼ 1ƒ¾²½U =ˆ»U»U»»U»U» ¼ 1ƒQ Q ¼ ¼ 1ƒ ¼ ¼ 1ƒ ½U =ˆ ¼ 1ƒ¾²½U =ˆ»U»U» =ˆƒQ Q =ˆ ±²U² =ˆƒ ³Uµ =ˆƒQ Q =ˆ =ˆƒ Ļ =ˆ =ˆƒ ³Uµ»U»U» ±²U² ¼ 1ƒ ¼ ¼ 1ƒ ½U =ˆ ¼ 1ƒ¾²½U =ˆ»U»U» ¹º¹º¹ ±²U² =ˆƒ Ļ =ˆ =ˆƒ ³Uµ MW-ZPCiR-ICT-PWr 11

Pamieć Deskryptor obszaru pami eci kolorowanej adr. skrót znaczenie 00 CN Start Adres pocz atku obszaru 04 CN End Adres końca obszaru + 1 08 CN NxtCN Wskaźnik na nast epny deskryptor 0C CN PrvCN Wskaźnik na poprzedni deskryptor 10 CN FstFM Adres pierwszego fragmentu wolnej pami eci w obszarze 14 CN LstFM Adres ostatniego fragmentu wolnej pami eci w obszarze 18 Zarezerwowane 1C CN TStart Adres pocz atku obszaru po translacji 20 CN TotFre Ł aczna ilość wolnej pami eci w obszarze 24 CN Attr Atrybuty obszaru 26 CN Color Kod koloru obszaru 28 CN Prio Priorytet obszaru MW-ZPCiR-ICT-PWr 12

Pamieć Atrybuty obszaru (sysglob.a) * memory type access bit definitions B_USER: equ 1<<0 memory allocatable by user procs B_PARITY: equ 1<<1 parity memory; must be initialized B_ROM: equ 1<<2 read-only memory; searched for modu B_NVRAM: equ 1<<3 non-volatile RAM; searched for modu B_SHARE: equ 1<<4 shared memory Kody koloru obszaru (sysglob.a) * Memory color definitions SYSRAM: equ $01 generic system ram VIDEO1: equ $80 CD-I video bank 1 VIDEO2: equ $81 CD-I video bank 2 Nagłówek listy fragmentów wolnej pami eci adr. skrót znaczenie 00 FM NxtFM Wskaźnik na nast epny fragment wolnej pami eci w obszarze 04 FM PrvFM Wskaźnik na poprzedni fragment wolnej pami eci w obszarze 08 FM Size Wielkość fragmentu (w bajtach) MW-ZPCiR-ICT-PWr 13

Pamieć Algorytm przydzielania pami eci 1. poszukiwanie w tablicy obszaru o dostatecznym rozmiarze (CN TotFre) 2. poszukiwanie w liście wolnych fragmentów tego obszaru (od CN FstFM do CN LstFM) fragmentu o dostatecznym rozmiarze (FM Size) 3. przydzielenie końcowej cz eści fragmentu i zmniejszenie FM Size (jeśli FM Size = 0, to usuni ecie elementu listy) Uwaga: W przypadku ż adania przydziału pami eci o dowolnym kolorze ( srqmem(), F$SRqMem) poszukiwanie obszaru w tablicy kończy si e po napotkaniu CN Prio=0 (pami eć o priorytecie zerowym może być przydzielona TYLKO na ż adanie z zadanym kolorem ( srqcmem(), F$SRqCMem)). MW-ZPCiR-ICT-PWr 14

Pamieć Usługi systemowe zwi azane z pami eci a: Nazwa funkcja w C Opis F$CpyMem cpymem() kopiowanie obszaru pami eci do bufora użytkownika F$Mem zmiana wielkości obszaru danych procesu F$SRqCMem srqcmem() przydzielenie bloku pami eci o zadanym kolorze F$SRqMem srqmem() przydzielenie bloku pami eci F$SRtMem srtmem() zwrot bloku pami eci F$Trans translacja adresu pomi edzy magistral a lokaln a (CPU), a systemow a (np. dla DMA) F$Move szybkie przesuni ecie zawartości bloku pami eci z uwzgl ednieniem nakładania si e obszarów (tylko w trybie SYSTEM) MW-ZPCiR-ICT-PWr 15

Pamieć Ochrona pami eci (inter task memory protection) MMU (Memory management Unit) układ do zarz adzania pami eci a i translacji adresów (w OS 9 używany do sprz etowej ochrony pami eci w trybie USER przez generowanie BusError przy próbie dost epu do obszaru nie wpisanego do tablicy). ssm (System Security Module) moduł rozszerzaj acy usługi systemowe o ochron e pami eci: F$Permit zezwolenie na dost ep do podanego obszaru pami eci (d0.l - wielkość obszaru, d1.w - tryb dost epu -ewr, a2.l - adres obszaru) F$Protect odebranie zezwoleń na dost ep do podanego obszaru pami eci (d0.l - wielkość obszaru, a2.l - adres obszaru) Uwaga: Usługi te s a dost epne tylko dla użytkowników z grupy 0. MW-ZPCiR-ICT-PWr 16