ASK 13 WINLINUX

background image

Sterowniki urządzeń w systemach operacyjnych

1/25

System operacyjny i

sterowniki urządzeń

background image

1. Podstawy

2/25

1

2

3

4

5

System operacyjny – przypomnienie podstaw

background image

1. Podstawy

3/25

1

2

3

4

5

Historia rozwoju systemów operacyjnych - zagadnienia

background image

2. Kernel

4/25

1

2

3

4

5

Kernel: RT / Monolithic / Microkernel

RT Kernel

background image

2. Kernel

5/25

1

2

3

4

5

Monolitic Kernel

Kernel: RT / Monolithic / Microkernel

background image

2. Kernel

6/25

1

2

3

4

5

Microkernel

Kernel: RT / Monolithic / Microkernel

background image

3. Linux

7/25

1

2

3

4

5

Linux Kernel

background image

3. Linux

8/25

1

2

3

4

5

Start systemu Linux

1.

Faza BootLoadera – inicjalizacja sprzętu oraz przekazanie kontroli do systemu

2.

Start jądra:

1.

Kernel_entry / stext – procedura w assemblerze inicjalizująca start jądra. Znajduje
się zazwyczaj w: kernel/head.s

2.

Start_kernel(), orginalnie w pliku init/main.c – inicjalizacja i uruchomienie wątku
„idle” (process id 0)

3.

wywołanie funkcji setup_arch(), inicjalizacja wybranych zasobów zależnych od
platformy jak: rozpoznanie CPU, zidentyfikowanie ramdisk, inicjalizacja
stronicowania

4.

trap_init() – inicjalizacja procedur obsługi sytuacji wyjątkowych

5.

init_IRQ() – inicjalizacja kontrolera przerwań

6.

Time_init – inicjalizacja timerów

7.

Console_init() – inicjalizacja urządzenia szeregowego do obsługi konsoli

8.

Calibrate_delay() – kalibracja dla funkcji udelay()

9.

Inicjalizacja dodatkowych sterowników urządzeń

3.

Inicjalizacja przestrzenii użytkownika:

1.

Inicjalizacja i przekazanie sterowania do procesu init

background image

3. Linux

9/25

1

2

3

4

5

Sterowniki urządzeń w systemie Linux

background image

3. Linux

10/25

1

2

3

4

5

Typy sterowników dla systemu Linux

1.

Character Device Drivers

– sterowniki urządzeń sekwencyjnych.

Odwołanie do urządzeń sekwencyjnych możliwe przez prosty
mechanizm wywołania funkcji: open, reak, write lub bezpośrednio.

2.

Block Device Drivers

sterowniki urządzeń blokowych.

Głównie do obsługi urządzeń o swobodnym dostępie. Wymiana
danych poprzez bloki. Aplikacja nie może bezpośrednio
odwoływać się do sterownika, tylko przez system plików.

3.

Network Device Drivers

sterowniki sieciowe.

Osobny typ ze względu na specjalne traktowanie stosu protokołów
sieciowych. Aplikacje nie maja bezpośredniego dostępu do tych
sterowników, tylko przez podsystem sieciowy.

background image

3. Linux

11/25

1

2

3

4

5

Przykład sterownika UART str.1

background image

3. Linux

12/25

1

2

3

4

5

Przykład sterownika UART str.2

P. Raghavan, A. Lad, S. Neelakandan, Embedded Linux System Design
and Developement, Auerbach Publications 2006

background image

3. Linux

13/25

1

2

3

4

5

Przykład sterownika UART str.2

P. Raghavan, A. Lad, S. Neelakandan, Embedded Linux System Design
and Developement, Auerbach Publications 2006

background image

14/25

1

2

3

4

5

4. Microsoft Windows

Windows – różne koncepcje sterowników

1. MS DOS – Tryb rzeczywisty. Sterownik to plik wykonywalny pracujący także w trybie

rzeczywistym. Informacja zebrana centralnie w pliku CONFIG.SYS.

2. MS Windows – nakładka na DOS. Steroniki to pliki wykonywalne .DRV. :

3. MS Windows 3.x – wielozadaniowość. Koncepcja maszyny wirtualnej w której

uruchamiają się aplikacje MS DOS (tryb virtual 8086). Pliki typu VxD.386.
Wprowadzono tryb użytkownika (user-mode) i tryb jądra (kernel-mode).

VxD – Virtual Device Driver

4. MS Windows NT (1990) – Sterowniki niekompatybilne z VxD. Pełny tryb chroniony

5. MS Windows 95/98 – VxD wciąż aktualne. Powstaje model WDM

WDM – Windows Driver Model

6. MS Windows XP – Aktualne WDM.

DDK – Driver Development Kit

background image

15/25

1

2

3

4

5

4. Microsoft Windows

Windows 98 VxD

background image

16/25

1

2

3

4

5

4. Microsoft Windows

Windows XP

background image

17/25

1

2

3

4

5

4. Microsoft Windows

Rodzaje sterowników w systemie Windows

background image

18/25

1

2

3

4

5

4. Microsoft Windows

Podstawy struktury sterowników WDM

IRP – I/O Request Packet

W. Oney, Programmint the Microsoft Windows Driver Model, Microsoft Press 2003

background image

19/25

1

2

3

4

5

4. Microsoft Windows

Wieloprogramowanie i wieloprzetwarzanie

background image

5. Sprzętowe wspieranie wielowątkowości

20/25

1

2

3

4

5

Wielowątkowość – rodzaje i wsparcie sprzętowe

Interleaved multithreading

Blocked multithreading

Simultaneous multithreading (SMT)

Chip multiprocessing

background image

5. Sprzętowe wspieranie wielowątkowości

21/25

1

2

3

4

5

Wielowątkowość – rodzaje i wsparcie sprzętowe str.2

background image

5. Sprzętowe wspieranie wielowątkowości

22/25

1

2

3

4

5

Pentium 4 hyperthreading i IBM Power5

Pentium 4 – hyperthreading = SMT z

dwoma wątkami.

IBM Power5 – SMT + multiprocessing

background image

5. Sprzętowe wspieranie wielowątkowości

23/25

1

2

3

4

5

Przykład IBM Power5

background image

Sterowniki urządzeń w systemach operacyjnych

24/25

Polecana literatura

1) W. Oney, Programming the Microsoft Windows Driver Model, Microsoft Press 2003

2) P. Raghavan, A. Lad, S. Neelakandan, Embedded Linux System Design and

Development, Auerbach Publications 2006

3) P. Orwick, G. Smith, Developing Drivers with the Windows Driver Foundation, Microsoft

Press 2007

4) D. Bovet, Understanding the Linux Kernel, O’Reilly 2005

5) W. Stallings, Organizacja i architektura systemu komputerowego, WNT 2004

background image

Sterowniki urządzeń w systemach operacyjnych

25/25

KONIEC

dr inż. Mariusz Kapruziak

mkapruziak@wi.ps.pl

pok. 107, tel. 449 55 44


Wyszukiwarka

Podobne podstrony:
ASK 13 SVN
ASK 13 PiotrGębala MateuszMacięga
13 Zapytaj Stryja Gadułę Ask Uncle Blabby 07062008
13 ZMIANY WSTECZNE (2)id 14517 ppt
13 zakrzepowo zatorowa
Zatrucia 13
pz wyklad 13
13 ALUid 14602 ppt
pz wyklad 13
ZARZ SRODOWISKIEM wyklad 13
Biotechnologia zamkniete użycie (2012 13)
Prezentacja 13 Dojrzewanie 2
SEM odcinek szyjny kregoslupa gr 13 pdg 1

więcej podobnych podstron