assembler€86ˆ 8

assembler€86ˆ 8



36    3. Kolejne generacje mikroprocesorów firmy INTEL

informacje określające atrybuty (zasady) dostępu do segmentu. Informacje le zawarte w jednym bajcie (rys. 3.6) są wykorzystywane do

-    izolowania systemu operacyjnego od programów użytkowników,

-    izolowania użytkowników miÄ™dzy sobÄ…,

-    kontrolowania typu danych.

Poszczególne bity oznaczają

P (ang.present) - segment jest (P = 1) lub nie jest (P = 0) w pamięci operacyjnej;

DPL (ang. descriptor pńvilege level) - poziom uprzywilejowania segmentu, 2 bity używane w testach przywilejów;

S (ang. segment descńptor ) - deskryptor segmentu programu, danych lub stosu (S = 1) lub deskryptor segmentu systemu (wtedy bity 1...3 mają inne znaczenie);

E (ang. executable ) - segment programu (E = 1) bądź danych (E = 0);

C/ED (ang. confomungfexpansion direction ) - dla programu: segment może być czytany (E= 1, C/ED= 1) przez różne programy z różnych poziomów uprzywilejowania, tzn. DPL nie jest uwzglÄ™dniany; dla danych: rozszerzenie segmentu (E = 0, C/ED = 1), offset musi być wiÄ™kszy niż dÅ‚ugość segmentu;

R/W (ang. writeable/readable ) - dla programu (E=l): segment programu może (nie może) być czytany dla danych (E = 0): segment danych może (nie może) być zapisywany;

A (ang. accessed ) - segment nie jest dostępny (A = 0) lub selektor segmentu został załadowany do rejestru segmentowego (A = 1).

W systemie można wyróżnić cztery poziomy uprzywilejowania numerowane 0...3, przy czym 0 okreÅ›la poziom o najwyższym priorytecie. PrzykÅ‚adowo, program może wywoÅ‚ać podprogram jedynie wówczas, gdy poziomy uprzywilejowania obu sÄ… zgodne. Intel przyjmuje nastÄ™pujÄ…cy przydziaÅ‚ przywilejów

0    - jÄ…dro systemu operacyjnego (zarzÄ…dzanie pamiÄ™ciÄ…, przeÅ‚Ä…czanie zadaÅ„ itp.),

1    - system operacyjny (dostÄ™p do danych, obsÅ‚uga wejść-wyjść itp.),

2    - rozszerzenia systemu operacyjnego przez użytkownika,

3    - programy użytkowe.

System operacyjny jest wiÄ™c chroniony przed bÅ‚Ä™dami programowymi użytkowników. W trakcie pracy systemu operacyjnego, bezpoÅ›rednie wywoÅ‚anie podprogramów systemowych (BIOS) z poziomu programu użytkowego nie jest możliwe. Z kolei wszystkie programy systemowe majÄ… dostÄ™p do programów użytkownika. Mechanizmy ochrony wymagajÄ… także wiÄ™kszej niż dla procesora 8086 "dyscypliny" w definiowaniu segmentów. PrzykÅ‚adowo segment programu może zawierać jedynie program lub ewentualnie staÅ‚e (np. tekst - jego odczyt jest możliwy). W segmencie programu nic mogÄ… wystÄ…pić zmienne, które muszÄ… być zapisywane i odczytywane, bÄ…dź stos. Z kolei z segmentu danych nie można wywoÅ‚ać podprogramu - jest on zarezerwowany wyÅ‚Ä…cznie dla danych lub stosu. Wreszcie, aby użytkownik nie mógÅ‚ zdezorganizować pracy systemu, niektóre rozkazy maszynowe mogÄ… być używane jedynie na wyższych poziomach uprzywilejowania. Na przykÅ‚ad rozkazy HALT, IR ET, POPF mogÄ… być używane jedynie na poziomie 0. Z kolei użycie rozkazów IN, 1NW, OUT, OUTW, STI, CLI i LOCK zależy od poziomu uprzywilejowania operacji wejÅ›cia-wyjÅ›cia (IOPL). Innymi sÅ‚owy ukÅ‚ady (elementy) wejÅ›cia-wyjÅ›cia mogÄ… być adresowane

powered by

3.3. Mikroprocesor 80386


Mi słoi

jedynie wówczas, gdy poziom uprzywilejowania programu zezwala na to. Tc oraz. inne, nie opisane (ze wzglÄ™du na ograniczonÄ… objÄ™tość książki), cechy mikroprocesora 80286 powodujÄ…, że przeważajÄ…ca wiÄ™kszość programów pracujÄ…cych pod kontrolÄ… systemu operacyjnego MS-DOS nie bÄ™dzie funkcjonowaÅ‚a w trybie adresowania wirtualnego. Prawic w każdym takim programie bywa zmieniana zawartość rejestrów segmentowych, zmienne bywajÄ… umieszczane w segmencie programu, sÄ… używane adresy bezwzglÄ™dne.

33.    ' Mikroprocesor 80386

Mikroprocesor 80386 otwiera nowÄ… generacjÄ™ mikroprocesorów 32-bitowych o tak dużych możliwoÅ›ciach, że nasze dotychczasowe wyobrażenia o wydajnoÅ›ci, sprawnoÅ›ci oraz zakresie zastosowaÅ„ systemów mikrokomputerowych bÄ™dÄ… musiaÅ‚y ulec znacznej zmianie. Procesor 80386 charakteryzuje siÄ™ 32-bitowÄ… wewnÄ™trznÄ… i zewnÄ™trznÄ… architekturÄ…. Oznacza to, że w jednym cyklu maszynowym procesor może przetwarzać 32 bity. Również jednym rozkazem może komunikować siÄ™ z otoczeniem za poÅ›rednictwem szybkiej, 32-bitowcj magistrali danych, co pozwala miÄ™dzy innymi na zaadresowanie pamiÄ™ci operacyjnej o wielkoÅ›ci 4 GB (4 GB = 4 miliardy bajtów).

Szybkość procesora przy częstotliwości zegara 16 MHz wynosi 3-4 milionów instrukcji na sekundę (MIPS). Możliwe są trzy tryby pracy.

Adresowanie rzeczywiste (ang. real modÄ™)

W trybie tym, podobnie jak dla mikroprocesora 80286, istnieje pełna zgodność z procesorami 8086/8088. Przy współpracy z zegarem o częstotliwości 16 MHz procesor 80386 jest wtedy 15-20 razy szybszy niż 8088 i 2-2,5 razy niż 80286.

Adresowanie wirtualne (ang. proiected modÄ™)

Główny tryb pracy mikroprocesora 80386 jest wykorzystywany w systemach wielodostÄ™pnych i wielozadaniowych. Procesor może obsÅ‚ugiwać równoczeÅ›nie dowolnie wiele systemów operacyjnych z równolegle wykonywanymi programami użytkowymi. W trybie tym procesor może adresować do 64 TB (terabajt = bilion bajtów) pamiÄ™ci wirtualnej dla zadania. Odpowiada to pojemnoÅ›ci 3,2 milionów staÅ‚ych dysków o pojemnoÅ›ci 20 MB każdy. W praktyce bÄ™dzie to miaÅ‚o znaczenie oczywiÅ›cie dopiero wówczas, gdy optyczne pamiÄ™ci masowe - majÄ…ce pojemnoÅ›ci rzÄ™du giga i terabajtów -slan4 siÄ™ popularne. Wielkość segmentów sÅ‚użących do strukluryzacji przestrzeni adresowej może być różna, dopasowana do struktury programu, nie wiÄ™ksza niż do 4 GB. ZarzÄ…dzanie fizycznÄ… pamiÄ™ciÄ… operacyjnÄ… (do 4 GB) wiąże siÄ™ z podziaÅ‚em każdego Pojedynczego segmentu na strony o staÅ‚ej wielkoÅ›ci 4 KB. PodziaÅ‚ pamiÄ™ci na segmen-ly 1 strony umożliwia organizacjÄ™ pamiÄ™ci wirtualnej. Części programu i danych, które n,e mieszczÄ… siÄ™ w pamiÄ™ci operacyjnej, sÄ… skÅ‚adowane w pamiÄ™ci masowej, np. dysku tyPu Winchester. Gdy komputer potrzebuje danych lub części programu, które nie znajdujÄ… siÄ™ w pamiÄ™ci operacyjnej, żądane informacje jako pliki danych o wielkoÅ›ci segmentu lub strony sÄ… przesyÅ‚ane z dysku do pamiÄ™ci operacyjnej. Wymienione


Wyszukiwarka

Podobne podstrony:
assembler?86? 6 32 3. Kolejne generacje mikroprocesorów firmy INTEL -    efektywna
assembler?86? 9 38    3. Kolejne generacje mikroprocesorów firmy INTEL możliwoÅ›ci m
assembler?86? 5 3. Kolejne generacje mikroprocesorów firmy INTEL Szybki rozwój technologii wytwarz
assembler?86? 7 34    3. Kolejne generacje mikroprocesorów Jinny INTEL Rejestr GDTR
Slajd5 Pierwszy 16 - bitowy mikroprocesor firmy Intel zostaÅ‚ wyprodukowany
assembler?86? 8 56 4. Język asemblerowy mikroprocesorów 8086/8088 433. Połączenia międzymodułowe O
assembler?86? 8 76    4. JÄ™zyk asemblerowy mikroprocesorów 8086/8088 LE (ang. lower
assembler?86? 5 50 4. Język asemblerowy mikroprocesorów 8086/8088 ; w kolejnym przykładzie zmienne
assembler?86? 8 % 5. Rozkazy> mikroprocesorów 8086/8088 Przykład LA HF NOT AH SAHF; znaczniki s
assembler?86? 8 116 5. Rozkazy mikroprocesorów 8086088 IDIV (ang. integer divide byte or word ) dz
assembler?86? 8 136 5. Rozkazy mikroprocesorów 8086/8088 Rozkaz realizuje przesunięcie cykliczne w
assembler?86? 8 156 5. Rozkazy mikroprocesorów 8086/8088 JNC (ang.jump if no carry ) skok względny
•Model prostego procesora 9• Rodzina procesorów firmy Intel — - Datę Transistors Feature size
Historia mikroprocesorów (3) 1974 - INTEL wprowadza na rynek ulepszona wersję 8008, procesor Intel 8
Rodziny procesorów (Intel) x86 to rodzina architektur procesorów firmy Intel, należących do kategori
5. Åšwiatowe tendencje rozwojowe - systemy kolejnych generacji Celem rozwoju sieci telekomunikacyjnyc

więcej podobnych podstron