You are on page 1of 77

Architektura systemu

Windows
Architektura systemu Windows

 Uruchamianie systemu Windows


 Tryby pracy systemu
 Jądro systemu Windows
 Wykorzystanie pamięci w systemie Windows
 Koniec

2
Tryby uruchamiania komputera w systemach
Windows

Wszystkie dostępne systemy z rodziny Windows®,


oprócz normalnego trybu uruchomienia, mają
zaimplementowane inne metody umożliwiające
rozruch systemu, z zależności zaistniałych
okoliczności i potrzeb.

3
Tryby uruchamiania systemu Windows

TRYB AWARYJNY
Rozruch systemu odbywa się przy załadowaniu
minimalnej liczby sterowników i usług
systemowych, które są absolutnie niezbędne do
rozruchu systemu. Programy znajdujące się w
grupie STARTUP, nie zostają ładowane, aby było
możliwe między innymi, usunięcie problemów
wywoływanych przez te właśnie programy.

4
Tryby uruchamiania systemu Windows

TRYB AWARYJNY - ten tryb pracy systemu, jest


przeznaczony do diagnozy i usuwania problemów działania
lub uruchamiania systemu. Ze względu na specyficzny
sposób ładowania usług i programów, pozwala na
uruchomienie systemu nawet w przypadku poważnych
problemów, związanych ze sterownikami lub programami.
Aby przejść do trybu awaryjnego, należy użyć klawisza F8
tuż po zainicjowaniu przez BIOS zainstalowanych
urządzeń. Uruchomienie systemu w tym trybie, spowoduje
także wygenerowanie pliku dziennika rozruchowego
Ntbtlog.txt, a w przypadku istnienia już takiego pliku,
informacje zostaną dopisane na końcu istniejącego pliku.
5
Tryby uruchamiania systemu Windows

Producent - Microsoft - zaleca stosowanie trybu awaryjnego w


następujących przypadkach (źródło www.microsoft.com):
• Gdy system Windows zatrzymał się i przez długi czas nie
można go uruchamiać.
• Gdy system funkcjonuje niewłaściwie lub jego działanie
powoduje nieoczekiwane wyniki.
• Gdy ekran funkcjonuje nieprawidłowo.

• Gdy komputer został nagle wyłączony

• Gdy potrzebne jest zbadanie często powtarzającego się błędu.

• Gdy uruchomienie systemu stało się niemożliwe po instalacji


nowego sterownika lub oprogramowania.
6
Tryby uruchamiania systemu Windows

TRYB AWARYJNY Z OBSŁUGĄ SIECI

Bardzo zbliżony w działaniu i funkcjonalności do


standardowego trybu awaryjnego, z tą różnicą, że są
ładowane dodatkowe usługi pozwalające na
poruszanie się w sieci. Ten tryb umożliwia
wykorzystanie funkcji ZASAD GRUP, także tych
realizowanych przez serwer podczas operacji
logowania, a także zasad obowiązujących na
lokalnej maszynie.

7
Tryby uruchamiania systemu Windows

TRYB AWARYJNY Z WIERSZEM POLECENIA

Po załadowaniu tego trybu, nie mamy możliwości


korzystania z myszy, gdyż EXPLORER.EXE (czyli
między innymi Pulpit) nie zostaje załadowany. W
zamian zostaje uruchomione środowisko
interpretera poleceń - czyli środowisko DOS`owe.

8
Tryby uruchamiania systemu Windows

WŁĄCZ REJESTRACJĘ ROZRUCHU

Proces normalnego rozruchu systemu. Dodatkowo


podczas uruchamiania, tworzony jest plik dziennika
o nazwie Ntbtlog.txt w głównym folderze
systemowym (%SystemRoot%), który zawiera
nazwy i stany wszystkich załadowanych do pamięci
sterowników.

9
Tryby uruchamiania systemu Windows

WŁĄCZ TRYB VGA

Uruchamia system z wykorzystaniem podstawowego


sterownika karty graficznej (najczęściej w najniższej
rozdzielczości i z użyciem minimalnej liczby
kolorów). Tryb ten należy stosować gdy obecny w
systemie sterownik został uszkodzony, lub został
zainstalowany sterownik niekompatybilny.

10
Tryby uruchamiania systemu Windows

OSTATNIA ZNANA DOBRA KONFIGURACJA

Po wystąpieniu awarii, lub w razie występowania


różnych problemów, użycie tej opcji powoduje
uruchomienie systemu w ostatniej konfiguracji, w
której system działał poprawnie.

11
Tryby uruchamiania systemu Windows

NORMALNY ROZRUCH

Opcja która uruchamia system w normalnym trybie, z


ładowaniem wszystkich skonfigurowanych usług i
zainstalowanych aplikacji.

12
Tryby uruchamiania systemu Windows
WIERSZ POLECEŃ - to aplikacja, która pozwala
wprowadzać komendy, aby wywołać określone stany
systemu. Interpreter poleceń jest podstawą systemów
operacyjnych takich jak DOS czy UNIX, natomiast w
systemach okienkowych (z interfejsem graficznym),
nie jest on już podstawowym sposobem na zarządzanie
systemem. W Windows 98, interpreter poleceń ładuje
się z dyskietki (płyty), na której są zawarte programy
(okrojona wersja systemu DOS) umożliwiające
przeprowadzenie czynności naprawczych systemu,
usunięcie wirusów, skasowanie plików, modyfikacje
rejestru czy wreszcie uruchomić programy
diagnostyczne w celu wykonania operacji
niemożliwych w środowisku graficznym.
13
Tryby uruchamiania systemu Windows

WIERSZ POLECEŃ c.d.

W systemach NT (Windows 2000, NT, XP),


zaimplementowano szczególny rodzaj wiersza
poleceń - (dla celów diagnostycznych) - konsolę
odzyskiwania. Konsola umożliwia pełne
przywrócenie sprawności systemu, ale aby to
osiągnąć musimy posiadać sporą wiedzę na temat
samego systemu, jak i poleceń konsoli.
14
Tryby uruchamiania systemu Windows

KONSOLA ODZYSKIWANIA - jest to środowisko


podobne do wiersza poleceń, jednakże całkowicie
od niego niezależna. Jej zastosowanie to przede
wszystkim do zadań diagnostyczno -
konserwacyjnych i umożliwia administratorowi
dostęp do dysku twardego (bez względu na
stosowany system formatowania). Konsoli używa
się niezależnie od działania systemu, to sprawia że
jest ona narzędziem służącym przede wszystkim do
naprawy konfiguracji systemu oraz jego kalibracji,
gdy któraś z usług "blokuje" system.
15
Tryby uruchamiania systemu Windows

KONSOLA ODZYSKIWANIA c.d.

Z konsoli, korzystać mogą tylko administratorzy (ze


względu na konieczność logowania), a czynności
jakie mogą wykonać to między innymi: zarządzanie
plikami i folderami, uruchamianie i zatrzymywać
usługi oraz naprawia systemu, jest także możliwość
naprawy sektora startowego i MBR oraz
sformatowanie woluminów.

16
Tryby uruchamiania systemu Windows

Uruchomienie i stosowanie konsoli odzyskiwania.


Są dwie metody za pomocą których możemy dostać się do
Konsoli.
1. Start z instalacyjnych bootdisków lub CD Windows:
Metoda uniwersalna. Stosowana gdy system w ogóle nie
może się uruchomić.
2. Zainstalowanie Konsoli jako jednej z opcji startowych:
Metoda wybiórcza (nie zadziała gdy np. mamy uszkodzony
obszar rozruchowy dysku). Przydatne gdy chcemy szybko
dokonać akcji np. kasowania nieusuwalnych plików nie
możliwych do usunięcia w działającym systemie.
17
Tryby uruchamiania systemu Windows

Po udanym uruchomieniu, konsola pokazuje listę


dostępnych instalacji systemów Windows. Należy
się odwołać do tej, która wymaga naprawy lub
zmian, wprowadzając odpowiednią cyfrę i
zatwierdzając wybór klawiszem ENTER. Jeżeli nie
zostanie wskazana instalacja, to naciśnięcie ENTER
spowoduje restart komputera. Po wybraniu
instalacji, konsola zażąda podania hasła
administratora, które jeżeli zostanie wpisane
niepoprawnie trzy razy, konsola zablokuje dostęp do
dysków, a następnie zrestartuje komputer 18
Tryby uruchamiania systemu Windows

W przypadku poważnych uszkodzeń: utrata lub


uszkodzenie rejestru, brak dostępnych instalacji do
których się można odwołać, to konsola uruchomi się
w katalogu głównym bez żądania podania hasła. W
takich przypadkach mamy ograniczone możliwości
naprawy instalacji oraz brak dostępu do folderów
(co wynika z sytuacji braku systemu). Możliwe jest
jedynie ograniczone operacje naprawcze dysku,
takie jak: chkdsk, fixboot i fixmbr.

19
Tryby uruchamiania systemu Windows

Gdy hasło zostanie zatwierdzone, wtedy mamy pełny


dostęp do folderów systemowych (folder główny
dowolnego woluminu %SystemRoot%) i innych
występujących lokalnie, odnoszących się do
instalacji do której jesteśmy zalogowani.
Podczas korzystania z konsoli, mamy możliwość
kopiowania plików na dysk twardy z dyskietki lub
płyty, a także kopiować dane między dyskami. Jest
dostępnych wiele poleceń, jednakże jeżeli podczas
próby wykonania jakiegoś polecenia zostanie
wyświetlony komunikat "Odmowa dostępu"
oznacza to, że konsola nie akceptuje tego rozkazu.
20
Tryby uruchamiania systemu Windows

Konsola daje szerokie możliwości, ale jedynie przy


użyciu zaimplementowanych (dopuszczalnych)
poleceń - Attrib, Batch, Cd lub Chdir, Chkdsk, Cls,
Copy, Del lub Delete, Dir, Disable, Diskpart,
Enable, Exit, Expand, Fixboot, Fixmbr, Format,
Help, Listsvc, Logon, Map, Md lub Mkdir, More lub
Type, Rd lub Rmdir, Ren lub Rename, Set,
Systemroot.
Gdy już skończymy pracę z konsolą, wpisujemy
EXIT, i w ten sposób opuszczamy środowisko i
ponownie uruchamiamy komputer. 21
Tryby pracy systemu Windows

 Tryb rzeczywisty i chroniony procesora


 Procesy, wątki, wielozadaniowość

22
Tryb rzeczywisty i chroniony procesora

Wszystkie 32-bitowe procesory (386 i nowsze) mogą


pracować w kilku trybach. Tryby pracy procesora
odnoszą się do różnych środowisk roboczych i mają
wpływ na możliwości i instrukcje przez niego
wykonywane. Tryb pracy procesora decyduje, w
jaki sposób zarządza on pamięcią systemową i
zadaniami do wykonania.

23
Tryb rzeczywisty i chroniony procesora

Można wyróżnić następujące trzy tryby pracy.


 tryb rzeczywisty (oprogramowanie 16-
bitowe),
 tryb chroniony (oprogramowanie 32-bitowe),

 wirtualny tryb rzeczywisty (oprogramowanie


16-bitowe uruchamiane na platformie 32-
bitowej).

24
Tryb rzeczywisty pracy procesora

Oryginalny komputer IBM PC XT był wyposażony w


procesor 8088, który przy użyciu 16-bitowych
rejestrów wewnętrznych potrafił wykonywać
instrukcje 16-bitowe i współpracować z pamięcią o
pojemności maksymalnej 1 MB. Oprogramowanie,
w które był wyposażony oryginalny IBM PC zostało
stworzone z myślą o współpracy z procesorem
8088, dlatego też wykorzystywało zestaw instrukcji
16-bitowych i 1-megabajtowy model pamięci.
25
Tryb rzeczywisty pracy procesora c.d.

Następne procesory, takie jak 286, nadal mogły


wykonywać te same 16-bitowe instrukcje co
procesor 8088, ale już znacznie szybciej. Inaczej
mówiąc, procesor 286 był w pełni z nim
kompatybilny, dlatego też można było na nim
uruchamiać wszystkie programy 16-bitowe co w
przypadku procesora 8088. Tryb wykonywania
przez procesory 8088 i 286 instrukcji 16-bitowych
został określony terminem trybu
rzeczywistego (ang. real mode).
26
Tryb rzeczywisty pracy procesora c.d.

Wszystkie programy pracujące w trybie rzeczywistym


mogą korzystać tylko z instrukcji 16-bitowych i
współpracować z 20-bitową architekturą pamięci ( 1
MB). Tego typu oprogramowanie z reguły jest
jednozadaniowe, co oznacza, że jednocześnie może
być uruchomiony tylko jeden program. Ponadto nie
ma wbudowanej żadnej ochrony zapobiegającej
wykorzystaniu przez program obszaru pamięci już
przydzielonego innemu programowi lub systemowi
operacyjnemu. Jeśli zatem uruchomiono więcej niż
jeden program, dowolny z nich może spowodować
zawieszenie całego systemu. 27
Tryb chroniony (32-bitowy)

Pierwszym procesorem 32-bitowym przeznaczonym


dla komputerów PC i wprowadzonym do sprzedaży
był układ 386. Procesor ten mógł wykonywać
zupełnie nowy zestaw instrukcji 32-bitowych. Aby
w pełni wykorzystać taką możliwość, konieczne
było stworzenie odpowiedniego 32-bitowego
systemu operacyjnego i aplikacji.

28
Tryb chroniony (32-bitowy) c.d.

Nowy, 32-bitowy tryb pracy procesora został


określony terminem trybu chronionego (ang.
protected mode). Nazwa wywodzi się stąd, że
programy działające w tym trybie otrzymują własny
obszar pamięci, przez co nie dochodzi między nimi
do konfliktów.

29
Tryb chroniony (32-bitowy) c.d.

Windows XP jest pierwszym w pełni 32-bitowym


systemem operacyjnym, który odniósł prawdziwy
sukces i było to spowodowane głównie faktem
zakończenia tworzenia przez Microsoft systemów z
serii Windows 95/98/Me, które są mieszanką
architektur 16- i 32-bitowej. Windows 3.x był
ostatnim wyłącznie 16-bitowym systemem
operacyjnym.

30
Tryb chroniony (32-bitowy) c.d.

Jednak dla zachowania ciągłości firma Intel na wszelki


wypadek wbudowała, do układu 386 i nowszych,
kompatybilność wstecz z trybem rzeczywistym.
Pozwoliło to, bez potrzeby wykonywania żadnych
modyfikacji, na uruchamianie 16-bitowych systemów
operacyjnych i aplikacji. Działały one zupełnie
przyzwoicie i o wiele szybciej niż w przypadku
poprzedniego procesora, wykorzystując tylko
16-bitowe instrukcje i mając dostęp do tego samego
obszaru pamięci o pojemności 1 MB.
31
Tryb chroniony (32-bitowy) c.d.

Procesor Itanium oferuje nową architekturę 64-


bitową, chociaż można również uruchomić
istniejące aplikacje 32-bitowe. Aby jednak w pełni
wykorzystać jego możliwości, konieczne jest
stworzenie 64-bitowego systemu operacyjnego i
aplikacji. Firma Microsoft opracowała 64-bitową
wersję systemu Windows XP, natomiast kilka
innych producentów stworzyło 64-bitowe aplikacje
sieciowe przeznaczone dla stacji roboczych.
32
Wirtualny tryb rzeczywisty

Kluczem do zgodności wstecz 32-bitowego


środowiska Windows jest trzeci tryb pracy
procesora wirtualny tryb rzeczywisty
(ang. virtual real mode) .

33
Wirtualny tryb rzeczywisty c.d.

Wirtualny tryb rzeczywisty właściwie jest


trybem wirtualnym środowiska 16-bitowego
działającego w 32-bitowym trybie chronionym. Po
uruchomieniu w systemie Windows sesji DOS jest
wykorzystywany wirtualny tryb rzeczywisty. Dzięki
wielozadaniowości oferowanej przez tryb chroniony
właściwie możliwe jest uruchomienie kilku sesji w
trybie rzeczywistym, w których działają programy
na zasadzie pracy w wirtualnych komputerach.
Programy te mogą działać jednocześnie, nawet gdy
są uruchomione aplikacje 32-bitowe. 34
Wirtualny tryb rzeczywisty c.d.

Należy zauważyć, że dowolny program działający w


wirtualnym trybie rzeczywistym ma dostęp tylko do
1 MB pamięci, co spowoduje, że będzie
"przekonany o tym", że jest to pierwszy i jedyny
megabajt pamięci dostępnej w systemie. Inaczej
mówiąc, jeśli aplikacja napisana dla systemu DOS
zostanie uruchomiona w wirtualnym trybie
rzeczywistym, będzie miała do dyspozycji tylko 640
kB. Takie ograniczenia wynika stąd, że w
przypadku 16-bitowego środowiska pracy jest
dostępny tylko 1 MB pamięci RAM, z czego 384
kB jest zarezerwowane dla samego systemu. 35
Wirtualny tryb rzeczywisty c.d.

Wirtualny tryb rzeczywisty jest wykorzystywany w


momencie uruchomienia, w oknie sesji DOS, 16-
bitowego programu stworzonego dla systemu DOS
lub Windows 3.x. Po uruchomieniu takiego
programu system Windows tworzy wirtualną
maszynę DOS, która przejmuje jego obsługę.

36
Wirtualny tryb rzeczywisty c.d.

Niektóre aplikacje 16-bitowe (dla systemu DOS i


Windows 3.x), działając w środowisku 32-bitowym,
nie zachowują się prawidłowo, co oznacza, że
wykonują one operacje, które nie są obsługiwane
nawet w wirtualnym trybie rzeczywistym. W takich
sytuacjach rozwiązaniem jest przełączenie procesora
Pentium III w faktyczny tryb rzeczywisty poprzez
załadowanie systemu DOS z dyskietki startującej
lub, w przypadku systemu Windows 9x (z wyjątkiem
Me), poprzez przerwanie procesu jego ładowania i
nakazanie uruchomienia zwykłej platformy DOS. 37
Wirtualny tryb rzeczywisty c.d.

Istnieją również programy, które "poszerzają" system


DOS i udostępniają pamięć rozszerzoną (powyżej 1
MB). Czasem są one określane terminem
ekspandera systemu DOS (ang. DOS extenders) i
zazwyczaj stanowią część programów
przeznaczonych dla systemu DOS lub Windows 3.x.
Protokół opisujący proces przełączania systemu
DOS w tryb chroniony nosi nazwę DPMI (ang.
DOS protected mode interface).
38
Tryb rzeczywisty i chroniony procesora
Procesor SO Aplikacja RAM Tryb pracy
procesora

16-bit 16-bit 16-bit do 1MB rzeczywisty

32-bit 32-bit 32-bit powyżej 1MB

64-bit 64-bit 64-bit powyżej 1MB

39
Tryb rzeczywisty i chroniony procesora
Procesor SO Aplikacja RAM Tryb pracy
procesora

16-bit 16-bit 16-bit do 1MB rzeczywisty

32-bit 32-bit 32-bit powyżej 1MB chroniony

64-bit 64-bit 64-bit powyżej 1MB

40
Tryb rzeczywisty i chroniony procesora
Procesor SO Aplikacja RAM Tryb pracy
procesora

16-bit 16-bit 16-bit do 1MB rzeczywisty

wirtualny
rzeczywisty

32-bit 32-bit 32-bit powyżej 1MB chroniony

64-bit 64-bit 64-bit powyżej 1MB


41
Tryb rzeczywisty i chroniony procesora
Procesor SO Aplikacja RAM Tryb pracy
procesora

16-bit 16-bit 16-bit do 1MB rzeczywisty

+DPMI
wirtualny
powyżej 1MB
rzeczywisty

32-bit 32-bit 32-bit powyżej 1MB chroniony

64-bit 64-bit 64-bit powyżej 1MB 42


Procesy, wątki, wielozadaniowość

Proces - jedno z najbardziej podstawowych


pojęć w informatyce, definiowane jako
egzemplarz wykonywanego programu; może
istnieć wiele różnych procesów wykonujących
ten sam program.

43
Procesy, wątki, wielozadaniowość c.d.

W celu wykonania programu system


operacyjny przydziela procesowi
odpowiednie zasoby takie jak:
 procesor,
 pamięć,
 dostęp do urządzeń wejścia-
wyjścia,
 pliki.
44
Procesy, wątki, wielozadaniowość c.d.

W skład procesu wchodzą:


 kod programu,
 licznik rozkazów,
 stos,
 sekcja danych.

45
Procesy, wątki, wielozadaniowość c.d.
Za zarządzanie procesami odpowiada jądro systemu
operacyjnego, sposób ich obsługi jest różny dla
różnych systemów operacyjnych. W systemie
operacyjnym każdy proces posiada proces
nadrzędny, z kolei każdy proces może, poprzez
wywołanie funkcji systemu operacyjnego,
utworzyć swoje procesy potomne; w ten sposób
tworzy się swego rodzaju drzewo procesów. Każdy
proces otrzymuje od systemu operacyjnego
odrębne zasoby, w tym odrębną przestrzeń
adresową, listę otwartych plików, urządzeń itp.

46
Tworzenie procesów
 Użytkownik za pomocą powłoki zleca uruchomienie
programu.
 System operacyjny tworzy przestrzeń adresową
dla procesu oraz strukturę opisującą nowy proces
w następujący sposób:
 wypełnia strukturę opisującą proces,
 kopiuje do przestrzeni adresowej procesu dane i
kod, zawarte w pliku wykonywalnym,
 ustawia stan procesu na działający,
 dołącza nowy proces do kolejki procesów
oczekujących na procesor (ustala jego priorytet),
 zwraca sterowanie do powłoki użytkownika.
47
Diagram stanów procesu

Nowy Przyjęcie Zakończony


Przerwanie Wyjście

Gotowy Aktywny
Decyzja

Czekający
Obsłużenie zdarzenia Oczekiwanie na
zdarzenie
lub operacji WE/WY lub na wykonanie
operacji
48
Procesy, wątki, wielozadaniowość c.d.

Wątek (ang. thread) - jest innym rodzajem


procesu, wykonywanego współbieżnie w
obrębie jednego zadania (programu).
Różnica między zwykłym procesem a
wątkiem polega na współdzieleniu przez
wszystkie wątki uruchomione w jednym
zadaniu przestrzeni adresowej oraz
wszystkich struktur systemowych (np. listy
otwartych plików, gniazd, itp.).
49
Procesy, wątki, wielozadaniowość c.d.

Wielowątkowość (ang. multithreading) –


cecha systemu operacyjnego, dzięki której
w ramach jednego procesu może wykonywać
kilka wątków lub jednostek wykonawczych.
Nowe wątki to kolejne ciągi instrukcji
wykonywane oddzielnie. Wszystkie wątki
tego samego procesu współdzielą kod
programu i dane.
W systemach nie obsługujących
wielowątkowości pojęcia procesu i wątku
utożsamiają się. 50
Procesy, wątki, wielozadaniowość c.d.

Wielozadaniowość – cecha systemu


operacyjnego umożliwiająca mu
równoczesne wykonywanie więcej niż
jednego procesu.
Zwykle za poprawną realizację
wielozadaniowości odpowiedzialne jest
jądro systemu operacyjnego.

51
Procesy, wątki, wielozadaniowość c.d.
Systemami wielozadaniowymi są np.:
 Mac OS i jego następca Mac OS X,

 OS/2,

 SkyOS,

 systemy z rodziny Uniksów (np. GNU/Linux),

 systemy z rodziny Microsoft Windows (np.


Microsoft Windows XP);
nie są nimi natomiast np.:
 DOS (może być więcej niż jeden proces, ale tylko
jeden będzie wykonywany), 52
Schematyczna budowa systemu
komputerowego

Sprzęt

Sterowniki
Jądro
Powłoka 53
Jądro systemu WINDOWS
Trudno jest stwierdzić
jednoznacznie co należy do
systemu operacyjnego, a co
już nie. Jeśli już coś do
niego należy, to jest to
jego jądro (ang. kernel).
Jądrem nazywamy
kluczowy dla działania
systemu zbiór funkcji. To
właśnie jądro wykonuje
wszystkie zadania, które
ustaliliśmy wcześniej
54
Jądro systemu WINDOWS c.d.

Przyjęto podział na trzy główne elementy


budowy systemu operacyjnego:
 jądro systemu wykonujące i kontrolujące
wykonywane zadania.
 powłoka – specjalny program komunikujący
użytkownika z systemem operacyjnym,
 system plików – sposób zapisu struktury
danych na nośniku.
55
Jądro systemu WINDOWS c.d.
Jądro składa się z następujących elementów
funkcjonalnych:
 planisty czasu procesora, ustalającego które
zadanie i jak długo będzie wykonywane,
 przełącznika zadań, odpowiedzialnego za
przełączanie pomiędzy uruchomionymi zadaniami,
 Dodatkowo:
 modułu zapewniającego synchronizacje i
komunikację pomiędzy zadaniami,
 modułu obsługi przerwań i zarządzania
urządzeniami,
 modułu obsługi pamięci, zapewniającego przydział i
ochronę pamięci.
 innych zależnie od funkcji i przeznaczenia systemu.
56
Jądro systemu WINDOWS c.d.
Kernel: serce systemu
Zadaniem jądra jest sterowanie działaniem
systemu operacyjnego. Dlatego jego jakość
w znaczący sposób wpływa na sprawność
działania całego peceta. To właśnie jądro
utrzymuje wszystko w ruchu, ponieważ
zawiera sterowniki sprzętu umożliwiające
komunikację z urządzeniami zewnętrznymi
oraz moduły zarządzające komponentami
komputera, takimi jak pamięć operacyjna,
procesor czy dysk twardy. 57
Jądro systemu WINDOWS c.d.

58
Jądro systemu WINDOWS c.d.
Pozostałe zadania jadra systemu:
 Dba o bezpieczne działanie systemu,
śledząc wszystkie uruchomione procesy.
 Nadaje też uruchomionym programom
prawo do korzystania z urządzeń
sprzętowych przez określony czas.
 Organizuje zasoby dla zachowania
stabilności systemu, obejmujące funkcje, z
których korzystamy na co dzień, m.in.
zarządzanie systemem plików.
59
Jądro systemu WINDOWS c.d.
Od czasu wprowadzenia linii systemów NT w
architekturze Windows istnieje podział na:
 tryb użytkownika - działa właściwie
wszystko, co widzimy, korzystając z
komputera. Dojścia sięgające bardziej w
głąb systemu są kierowane przez
odpowiedni interfejs programowy, np.
Win32 API korzystający z bibliotek
systemowych DLL.
 tryb jądra – działa w tle, a użytkownik
dowiaduje się o jego istnieniu tylko wtedy,
kiedy pojawia się poważny problem. 60
Jądro systemu WINDOWS c.d.
Centralną pozycję w systemie Windows
zajmuje plik „ntoskrnl.exe”. Aby obsłużyć
tryb jądra i tryb użytkownika, funkcjonuje
on dwutorowo, obejmując warstwę jądra i
tzw. egzekutor.
Warstwa jądra łączy tryb użytkownika i tryb
jądra, a jej głównym zadaniem jest
przydzielanie poszczególnym programom i
procesom określonej ilości czasu procesora.
Egzekutor z kolei obejmuje zakresem
działania usługi systemowe, np. Plug&Play.
61
Jądro systemu WINDOWS c.d.
Najgłębiej w systemie znajduje się tzw.
abstrakcyjna warstwa sprzętowa
(HAL: Hardware Abstraction Layer).
Jest to zwiazane z tym, że architektury
poszczególnych pecetów bardzo się różnią.
Jednak za sprawą HAL od strony jądra
wszystkie wyglądają tak samo. Dzięki temu
kernel może przydzielać czas procesora
niezależnie od tego, czy dany układ ma dwa
rdzenie i został wyprodukowany przez AMD,
czy też jest czterordzeniowy i pochodzi od
Intela. 62
Wykorzystanie pamięci w systemie WINDOWS
Czym jest pamięć wirtualna i jak działa?
32-bitowa architektura naszych komputerów pozwala
zaadresować do 4 GB pamięci operacyjnej. Niestety w
rzeczywistości mają one znacznie mniej pamięci RAM i co
gorsze o wiele mniej niż potrzebują. Brakująca pamięć RAM
została zatem rozszerzona o dodatkową przestrzeń na dysku
twardym, którą stanowi plik stronicowania lub jak kto woli -
plik wymiany.
Oba te elementy - pamięć RAM i plik stronico-
wania (pagefile.sys) tworzą przestrzeń adre-
sową nazywaną właśnie pamięcią wirtualną.
63
Wykorzystanie pamięci w systemie WINDOWS
c.d.

W systemie Windows XP tylko jądro systemu


operuje bezpośrednio na pamięci RAM.
Wszystkie inne procesy i aplikacje korzystają
w mniejszym lub większym stopniu z
pośrednictwa pamięci wirtualnej.
W pamięci RAM przechowywane są dane
pozostające aktualnie w użyciu. Jeśli w
pamięci RAM nie ma już miejsca, system
przerzuca do pliku stronicowania wszystko to,
co w danej chwili nie jest konieczne.
64
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Wyraźnym sygnałem
sugerującym, że pamięci
może być za mało będzie
natomiast wyraźne
spowolnienie pracy
systemu. Warto wtedy
zajrzeć do Menadżera
zadań, który dostarczy
niezbędnych informacji
o zasobach RAM i ich
wykorzystaniu. 65
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Poszukiwaną informację
znajdziemy w polu
"Pamięć zadeklarowana"
Jeżeli w polu "Razem",
całkowita ilość pamięci
będąca aktualnie w
użyciu, systematycznie
przewyższa zasoby
zainstalowanej pamięci
RAM to wskazane jest
dodanie pamięci.
66
Wykorzystanie pamięci w systemie WINDOWS
c.d.

Wyeliminowanie pliku stronicowania, nawet przy


największych zasobach RAM, nie wyłącza
mechanizmu pamięci wirtualnej, a system nie
przechodzi do adresowania wyłącznie w zakresie
obszaru pamięci RAM.
W związku z tym powinniśmy pójść w kierunku
ograniczenia jej zużycia. Można to osiągnąć poprzez
optymalizację usług domyślnie oferowanych przez
Windows XP oraz redukcję innych procesów
pracujących w tle.
67
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Windows XP domyślnie uruchamia w tle liczne
usługi. Wśród ich znajdują się jednak i takie,
które nigdy nie będą wykorzystane. Mimo to
są uruchamiane, niepotrzebnie pochłaniają
zasoby procesora i pamięci operacyjnej.

68
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Aby skutecznie wyłączyć usługę musimy wejść przez
Panel sterowania do Narzędzi Administracyjnych, a
stąd na Usługi. Jeżeli uaktywnimy zakładkę
Rozszerzony, to po kliknięciu na wybraną usługę
otrzymamy dość szeroką informację o jej
przeznaczeniu i ewentualnych skutkach wyłączenia.

69
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Lokalizacja pliku stronicowania i jego rozmiary

Zdecydowana większość komputerów domowych


pracuje na platformie jedno-dyskowej. 
W takiej sytuacji plik stronicowania powinien
znajdować się na partycji systemowej, gdzie
domyślnie jest zlokalizowany. Dzięki temu,
najczęściej wykorzystywane pliki systemowe i
plik wymiany znajdują się blisko siebie, a
długość skoków głowicy ulega znacznemu
skróceniu.
70
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Użytkownicy komputerów z więcej niż jednym dyskiem
twardym mogą skorzystać ze swoich możliwości sprzętowych
i rozłożyć operacje wejścia/wyjścia, generowane wymianą
danych między plikiem stronicowania a pamięcią RAM, przez
umieszczenie pliku stronicowania na drugim dysku.
Podejmując taką decyzję trzeba jednak spełnić dwa warunki:
 plik stronicowania powinien być umieszczony na
najszybszym urządzeniu, a zatem drugi dysk twardy
(lub kolejne) nie mogą być wolniejsze od systemowego 
 na dysku systemowym należy pozostawić plik
stronicowania o rozmiarze minimalnym około 2 MB dla
uniknięcia ewentualnych problemów ze stabilnością
systemu
71
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Własna wielkość pliku stronicowania
Jeżeli chodzi o wielkość pliku stronicowania,
dobrze jest samemu określić wielkość tego
pliku. Pomocnym narzędziem będzie
Menadżer zadań, który pozwoli nam określić
maksymalne zapotrzebowanie pamięci, z
jaką mamy do czynienia. Zwiększając ją o 10
- 15% ustalamy wartość początkową.
Wartość maksymalna powinna być w
przybliżeniu nawet dwukrotnie większa. 
72
Wykorzystanie pamięci w systemie WINDOWS
c.d.

Aby określić
własną wielkość
pliku
stronicowania
należy z menu
"Mój komputer"
wybrać -
"Właściwości".

73
Wykorzystanie pamięci w systemie WINDOWS
c.d.

W domyślnych ustawieniach parametry


pamięci wirtualnej, poza przypadkami
omówionymi wyżej, są dobrane w miarę
optymalnie. Opcje ustawień pozwalają jednak
na dokonanie pewnych modyfikacji, a zatem
wypadałoby odpowiedzieć na pytanie:

Czy warto?
74
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Przydzielanie zasobów
Na zakładce "Zaawansowane" w polu "Użycie
pamięci" można zdefiniować, w jaki sposób system
ma przydzielić zasoby pamięci operacyjnej.

75
Wykorzystanie pamięci w systemie WINDOWS
c.d.
Zmiana domyślnych ustawień bardzo często pojawia
się jako porada na zwiększenie szybkości działania
systemu. Niestety w warunkach domowych zmiana
tej wartości wywołuje bardzo niekorzystny efekt.
Należy pamiętać, że nasz komputer pracuje wtedy
jako stacja robocza. Przy zaznaczeniu opcji " Bufor
systemu" zostanie przydzielone procesom
systemowym aż 80% pamięci operacyjnej, natomiast
aplikacje z którymi pracujemy dostana tylko 20%.
Trudno w takim przypadku mówić o zwiększeniu
szybkości pracy, a ustawienie to ma sens tylko
wówczas gdy nasz komputer pracuje jako serwer. 76
Architektura systemu Windows

Koniec

Bibliografia:
o http://www.komputery-pc.info
o http://pl.wikipedia.org/wiki/DPMI
o http://www.chip.pl/artykuly

77

You might also like