Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Kontakty Webpage přednášky: –http://ulita.ms.mff.cuni.cz/mff/sylaby/PRG017.HTML Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.

Podobné prezentace


Prezentace na téma: "Kontakty Webpage přednášky: –http://ulita.ms.mff.cuni.cz/mff/sylaby/PRG017.HTML Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické."— Transkript prezentace:

1 Kontakty Webpage přednášky: –http://ulita.ms.mff.cuni.cz/mff/sylaby/PRG017.HTML Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické informace (manuály ap.): –ftp://ulita.ms.mff.cuni.cz/techdoc/index.html Maily: –Jakub.Yaghob@mff.cuni.cz

2 Využití tásků v rámci OS 1 tásk = 1 proces: 1 tásk = více procesů: 1 tásk = všechny procesy:

3 Struktura tásku

4 Stav tásku Aktuálně přístupná část adresového prostoru (definována obsahem seg. registrů CS, DS, SS, ES, FS, GS ) Obsah obecných aplikačních registrů ( EAX - EDX, ESI, EDI, EBP ) Obsah příznakového registru EFLAGS Obsah ukazatele instrukcí EIP Obsah ukazatele vrcholku zásobníku ESP Obsah systémových registrů CR3 (PDBR), LDTR a TR Mapa přístupných oblastí v I/O adresovém prostoru Definice zásobníku pro úrovně priorit 0, 1 a 2 Odkaz na (případný) dynamicky nadřazený tásk

5 TSS (Task-State Segment) Datová struktura udržující stav tásku Obecný formát: TSS: I/O Permission Bit Map Software Interrupt Redirection Bit Map Formated Part Unformated Part

6 Formátovaná část TSS 1. Oblast systémových zásobníků:

7 Formátovaná část TSS 2. Oblast aplikačních registrů:

8 Formátovaná část TSS 3. Oblast segmentových registrů:

9 Přepínání tásků Explicitně: –instrukcí skoku ( JMP ) –instrukcí volání ( CALL ) Implicitně: –výjimkou n. přerušením obsluhovanými samostatným táskem –instrukcí návratu z přerušení ( IRET ) při NT =1 Při explicitním přepnutí je cílový tásk určen: –svým TSS –táskovou branou (Task Gate) V obou případech proběhne standardní datový „prioritní test“: EPL  DPL Při implicitním přepnutí je cílový tásk určen: –táskovou branou v případě výjimek a přerušení –svým TSS uloženým v poli LINK aktuálního („starého“) tásku v případě IRET

10 Brána tásku (Task-Gate)

11 Způsoby přepínání tásků „Prosté“ přepnutí instrukcí JMP - nemění vzájemný (rovnocený) vztah tásků Volání tásku jako podprogramu instrukcí CALL (příp. i implicitním vyvoláním tásku při obsluze výjimky n. přerušení) - vytváří vztah dynamicky nadřazeného (volajícího) a podřízeného (volaného) tásku; takové tásky jsou organizovány do řetězců vnořených (nested) tásků:

12 Použitelnost tásků Použitelnost tásků při designu OS je prudce zvýšena výhodným mechanismem ochrany proti rekurzi: Při volání tásku jako podprogramu zůstává volající tásk označen jako BUSY (změnou typu deskriptoru TSS) a pokus o jeho opětovné volání způsobí výjimku


Stáhnout ppt "Kontakty Webpage přednášky: –http://ulita.ms.mff.cuni.cz/mff/sylaby/PRG017.HTML Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické."

Podobné prezentace


Reklamy Google