Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
X13UIT- Paměť a souborový systém
Ing. Martin Molhanec, CSc.
2
Paměť Je rychlá Vykonávají se v ní programy
Čím je větší, tím více programů so do ní vejde současně! Pokud je málo paměti je možné Využívat programové překrývání (overlay) Virtuální paměť (swap soubor) To ovšem činnost počítače zpomaluje! Je lepší mít více paměti, než rychlejší procesor!!!!
3
Paměť pod MS DOSem MS DOS pracuje v reálném módu procesoru 8086
Proto je k dispozici pouze 1MB RAM Z toho je pro OS a programy dostupných pouze 640kB! Slavná věta Billa Gatese: „Nikdo nebude přeci potřebovat více než 640kB RAM“! Velice brzy se zjistilo, že je to velice málo!!!
4
Zde je MS DOS, jeho proměnné a proměnné BIOSu
MS DOS memory map Zde je MS DOS, jeho proměnné a proměnné BIOSu
5
MS DOS memory map Zde mohou běžet naše aplikace
Zde je MS DOS, jeho proměnné a proměnné BIOSu
6
MS DOS memory map Paměťově mapovaná VIDEO RAM
Zde mohou běžet naše aplikace Zde je MS DOS, jeho proměnné a proměnné BIOSu
7
MS DOS memory map Od karet typu EGA je zde také jejich BIOS
Paměťově mapovaná VIDEO RAM Zde mohou běžet naše aplikace Zde je MS DOS, jeho proměnné a proměnné BIOSu
8
MS DOS memory map PC XT zde měli HDD BIOS
Od karet typu EGA je zde také jejich BIOS Paměťově mapovaná VIDEO RAM Zde mohou běžet naše aplikace Zde je MS DOS, jeho proměnné a proměnné BIOSu
9
MS DOS memory map Zde je PC BIOS PC XT zde měli HDD BIOS
Od karet typu EGA je zde také jejich BIOS Paměťově mapovaná VIDEO RAM Zde mohou běžet naše aplikace Zde je MS DOS, jeho proměnné a proměnné BIOSu
10
MS DOS – low memory Vektory přerušení
11
MS DOS – low memory IO.SYS nižší vrstva OS Vektory přerušení
12
MSDOS.SYS vyšší vrstva OS
MS DOS – low memory MSDOS.SYS vyšší vrstva OS IO.SYS nižší vrstva OS Vektory přerušení
13
MS DOS – low memory COMMAND:COM příkazový interpreter
MSDOS.SYS vyšší vrstva OS IO.SYS nižší vrstva OS Vektory přerušení
14
MS DOS – low memory COMMAND.COM příkazový interpreter dočasná overlay
MSDOS.SYS vyšší vrstva OS IO.SYS nižší vrstva OS Vektory přerušení
15
MS DOS – low memory COMMAND.COM příkazový interpreter dočasná overlay
Místo pro programy TPA Transient Program Area COMMAND:COM příkazový interpreter MSDOS.SYS vyšší vrstva OS IO.SYS nižší vrstva OS Vektory přerušení
16
MS DOS – low memory DEVICE DRIVERS Device drivers se natahují při zpracování souboru CONFIG.SYS. Umožňují zejména připojení různých nestandardních periferií k MS DOS. Například CD ROM, SCSI, atp.
17
MS DOS – low memory TSR (Terminate State Resident) Jsou prográmky, které zůstávají v paměti (většinou se natahují při zpracování souboru AUTOEXEC.BAT) a rozšiřují možnosti MSDOS. Například podpora češtiny, atp. TSR DEVICE DRIVERS Device drivers se natahují při zpracování souboru CONFIG.SYS. Umožňují zejména připojení různých nestandardních periferií k MS DOS. Například CD ROM, SCSI, atp.
18
MS DOS – low memory Čím dál méně paměti pro naše aplikace!!!!
TSR (Terminate State Resident) Jsou prográmky, které zůstávají v paměti (většinou se natahují při zpracování souboru AUTOEXEC.BAT) a rozšiřují možnosti MSDOS. Například podpora češtiny, atp. TSR DEVICE DRIVERS Device drivers se natahují při zpracování souboru CONFIG.SYS. Umožňují zejména připojení různých nestandardních periferií k MS DOS. Například CD ROM, SCSI, atp.
19
MS DOS – low memory Problém s pamětí vznikal zejména
V síťovém prostředí Bylo nutné zavést ovladače síťové karty a OS Novell Netware Při použití nestandardních periferií CD-ROM, SCSI, … V českém prostředí Česká klávesnice, české fonty do videokarty, české ovladače do tiskárny, atp.
20
MS DOS – low memory Problém s pamětí vznikal zejména
V síťovém prostředí Bylo nutné zavést ovladače síťové karty a OS Novell Netware Při použití nestandardních periferií CD-ROM, SCSI, … V českém prostředí Česká klávesnice, české fonty do videokarty, české ovladače do tiskárny, atp. Použití procesoru 80286, 80386,… toto neřeší, protože MS DOS pracuje pouze v reálném módu, čili módu procesoru 8086!!!
21
Expanded Memory - EMS Paměť expanded, čili rozšířená, také EMS (Expanded Memory Specifikation) se stránkuje do volného paměťového prostoru PC mezi 640kB až 1MB.
22
Expanded Memory - EMS Paměť expanded, čili rozšířená, také EMS (Expanded Memory Specifikation) se stránkuje do volného paměťového prostoru PC mezi 640kB až 1MB. Stránkují se vždy 4 stránky o 16kB do rámce (frame) o velikosti 64kB. Většinou od 0xE000.
23
Expanded Memory - EMS Specifikace ve verzi 3.2 byla navržena firmami Lotus, Intel a Microsoft, proto se mluví také o specifikaci EMS LIM.
24
Expanded Memory - EMS Specifikace ve verzi 3.2 byla navržena firmami Lotus, Intel a Microsoft, proto se mluví také o specifikaci EMS LIM. Je zřejmé, že paměť EMS bylo možné užívat už u počítačů typu IBM PC s procesorem 8086, protože se jednalo HW kartu!!!
25
Nevýhoda: složité programování!
Expanded Memory - EMS Nevýhoda: složité programování!
26
Nevýhoda: složité programování!
Expanded Memory - EMS Nevýhoda: složité programování! Poznámka: paměť se nazývá expanded (rozšířená). EMS je označení specifikace jejího rozhraní!!!
27
EEMS (Enhanced Expanded Memory Specifikation)
Expanded Memory - EMS EEMS (Enhanced Expanded Memory Specifikation) Je vylepšená specifikace firmami AST, Quadram and Ashton-Tate. Umožňuje mapovat až 64 stránek současně do prostoru 0 až 1MB. První čtyři stránky se ovšem musejí z důvodů kompatibility mapovat do 64kB okna.
28
EEMS (Enhanced Expanded Memory Specifikation)
Expanded Memory - EMS EEMS (Enhanced Expanded Memory Specifikation) Je vylepšená specifikace firmami AST, Quadram and Ashton-Tate. Umožňuje mapovat až 64 stránek současně do prostoru 0 až 1MB. První čtyři stránky se ovšem musejí z důvodů kompatibility mapovat do 64kB okna. EMS 4.0 je specifikace od LIM, která zahrnuje a rozšiřuje EEMS a EMS.
29
Paměť EMS Je v MS DOS zpřístupněna pomocí ovladače zaváděného při zpracování souboru CONFIG.SYS! Nemohou v ní běžet programy! Mohou se v ní ukládat pouze data. Od procesoru a výše se emuluje softwarově z paměti prodloužené (extended) dle specifikace XMS!!! Při užití procesoru se buď: Kopírovala paměť nad 1MB dolu pod 640kB. Bylo nutné však přepínat do chráněného módu. Nebo se využíval čipset pro stránkování, podobně jako to umí Při užití procesoru a vyšším se využívala jeho schopnost stránkování paměti. Dala se také emulovat softwarově z diskové paměti. Toto bylo pouze nouzové řešení, protože paměť na disku je velice pomalá!
30
Paměť EMS
31
Extended Memory - XMS Extended (prodloužená) paměť existuje u procesorů a výše. Je to paměť nad 1MB!
32
Extended Memory - XMS Extended (prodloužená) paměť existuje u procesorů a výše. Je to paměť nad 1MB! V MS DOS však není přímo přístupná! Protože ten pracuje pouze v reálném módu!
33
Extended Memory - XMS Extended (prodloužená) paměť existuje u procesorů a výše. Je to paměť nad 1MB! V MS DOS však není přímo přístupná! Protože ten pracuje pouze v reálném módu! Přístup k paměti je definován pomocí XMS (Extended Memory Specification), která byla vytvořena firmou Microsoft.
34
Paměť XMS Je v MS DOS zpřístupněna pomocí ovladače zaváděného při zpracování souboru CONFIG.SYS! Nemohou v ní běžet programy! Mohou se v ní ukládat pouze data. Při užití procesoru se buď: Kopírovala paměť nad 1MB dolu pod 640kB. Bylo nutné však přepínat do chráněného módu. Nebo se využíval čipset pro stránkování, podobně jako to umí Při užití procesoru a vyšším se využívala jeho schopnost stránkování paměti. Částí paměti XMS je paměť HMA. Z paměti XMS se dá emulovat paměť EMS! Pak se dá využít na vytváření UMB!
35
HMA – High Memory Area HMA paměť je první 64kB blok paměti nad 1MB! Je dostupný v reálném módu díky chybě procesoru (přetečení adresy).
36
Aktivace bitu A20 adresové sběrnice se děje přes čip klávesnice!!!
HMA – High Memory Area HMA paměť je první 64kB blok paměti nad 1MB! Je dostupný v reálném módu díky chybě procesoru (přetečení adresy). Aktivace bitu A20 adresové sběrnice se děje přes čip klávesnice!!!
37
UMB – Upper Memory Blocks
UMB (Upper Memory Blocks) nebo také UMA (Upper Memory Area) je paměť mezi 640kB a 1MB, která se dá v MS DOS využít pro běh programů.
38
UMB – Upper Memory Blocks
UMB (Upper Memory Blocks) nebo také UMA (Upper Memory Area) je paměť mezi 640kB a 1MB, která se dá v MS DOS využít pro běh programů. Dá se získat na mapováním paměti dle specifikace EMS 4.0 nebo EEMS do prázdných míst mezi 640kB až 1MB!
39
UMB – Upper Memory Blocks
UMB (Upper Memory Blocks) nebo také UMA (Upper Memory Area) je paměť mezi 640kB a 1MB, která se dá v MS DOS využít pro běh programů. Dá se získat na mapováním paměti dle specifikace EMS 4.0 nebo EEMS do prázdných míst mezi 640kB až 1MB! 8086 – je nutná HW EEMS karta. 80286 – je nutný mapovací čipset. 80386 – využívá stránkování CPU.
40
CONVENTIONAL MEMORY Applications TSR's DOS BIOS data area
16MB and beyond EXTENDED MEMORY Addressable in protected mode, not real mode 1MB + 64kb (-16 bytes if you're picky) EXTENDED MEMORY HMA First 64kb of exTENded memory used by MS-DOS DOS=HIGH or XMSNETX shell 1MB UPPER MEMORY PC BIOS Expanded Memory Page Frame Network Cards and other RAM/ROM Video Buffer LOADHIGH into unused blocks usually F000h-FFFFh, sometimes E000h-FFFFh usually D000h-DFFFh Varies A000h-BFFFh 640kb segment A000h CONVENTIONAL MEMORY Applications TSR's DOS BIOS data area 0kb (bottom of memory
41
EMS a XMS poskytovatelé
Microsoft HIMEM.SYS – XMS, HMA EMM386.EXE – EMS, UMB Quarterdeck (Stealthing) QRAM – EMS, XMS, HMA, UMB pro 80286 QEMM – EMS, XMS, HMA, UMB pro 80386 Qualitas (VGAswap) 386MAX – EMS, XMS, HMA, UMB pro 80386 Helix (Cloaking) Netroom – EMS, XMS, HMA, UMB pro 80386
42
EMS a XMS poskytovatelé
Microsoft HIMEM.SYS – XMS, HMA EMM386.EXE – EMS, UMB Quarterdeck (Stealthing) QRAM – EMS, XMS, HMA, UMB pro 80286 QEMM – EMS, XMS, HMA, UMB pro 80386 Qualitas (VGAswap) 386MAX – EMS, XMS, HMA, UMB pro 80386 Helix (Cloaking) Netroom – EMS, XMS, HMA, UMB pro 80386 VIDRAM V textovém režimu se dá jako paměť pro programy využít paměť grafického adapteru! Místo 640kB je pak 720kB!
43
MS DOS paměť v OS MS Windows
W9x Velikost paměti v DOS okénku je závislá na velikosti paměti, která byla k dispozici při spouštění Windows!!! Je tedy stále důvod pro optimalizaci! Na straně druhé, většinu speciálních driverů můžeme zavést až ve Windows (síť, čeština, atp.). NT, W2K, XP,… DOS okénko je pouze emulované, všechny drivery jsou mimo, jsou ve Windowsech.
44
MS DOS paměť v OS MS Windows
W9x Velikost paměti v DOS okénku je závislá na velikosti paměti, která byla k dispozici při spouštění Windows!!! Je tedy stále důvod pro optimalizaci! Na straně druhé, většinu speciálních driverů můžeme zavést až ve Windows (síť, čeština, atp.). NT, W2K, XP,… DOS okénko je pouze emulované, všechny drivery jsou mimo, jsou ve Windowsech.
45
Díky virtualizaci jsou problémy s málem paměti odstraněny?
Windows 95 Díky virtualizaci jsou problémy s málem paměti odstraněny?
46
Díky virtualizaci jsou problémy s málem paměti odstraněny?
Windows 95 Díky virtualizaci jsou problémy s málem paměti odstraněny? Není bohužel pravda. Existují některá fixní omezení. Neuvolňování paměti. Špatná práce přidělování paměti pro programy a cache.
47
Tento základní model zachovávají i OS typu NT.
Windows 95, NT, W2K, … Díky virtualizaci jsou problémy s málem paměti odstraněny? Tento základní model zachovávají i OS typu NT. Současný uživatel do přidělování paměti nevidí a nemůže je příliš snadno ovlivnit. Není bohužel pravda. Existují některá fixní omezení. Neuvolňování paměti. Špatná práce přidělování paměti pro programy a cache.
48
KONEC paměti
49
Souborový systém IBM PC
Ing. Martin Molhanec, CSc.
50
Co je to souborový systém?
Je to způsob organizace dat na hromadných mediích. Základními pojmy jsou: Soubor – označuje jménem určitá data (textová, binární, obrázky, programy,…) Adresář – označuje jménem množinu souborů a adresářů. Existuje velké množství souborových systémů – budeme se věnovat přednostně souborovým systémům FAT a NTFS od firmy Microsoft, které jsou užívány na osobních počítačích typu IBM PC.
51
FAT souborový systém (file system = FS)
FAT souborový systém vznikl pro OS MS DOS 1.0 firmy Microsoft. Má některé vlastnosti podobné svému předchůdci FS OS CP/M-80, ale je odlišný! Postupně vzniklo několik verzí FAT12 FAT16 (+VFAT) FAT32 (+VFAT)
52
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor N Sektor 0
53
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor 0 Sektor N
Boot Sektor Je první sektor disku, který se čte BIOSem po nabootování. Obsahuje zaváděcí kód (program) a popis disku (data).
54
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor 0 Sektor N
Je část disku, která obsahuje obsazení disku soubory a adresáři. Její formát je tabulka (pole) položek o 12, 16 nebo 32 bitech.
55
Je záloha FAT 1. měla by obsahovat totožná data!
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor 0 Sektor N FAT 2 Je záloha FAT 1. měla by obsahovat totožná data!
56
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor 0 Sektor N
Root adresář. Je první adresář na disku. Obsahuje (odkazuje na) soubory a další adresáře. Má pevnou velikost (FAT12 a FAT16)
57
Zde jsou data = soubory a adresáře!!!
FS FAT12, FAT16, FAT32 Lineární adresování sektorů Sektor 0 Sektor N Zde jsou data = soubory a adresáře!!!
58
FAT16 - podrobněji Jedná se o zřetězené seznamy. Obsah buňky je ukazatel na další prvek seznamu! V poslední buňce je hodnota FFFF. Volné buňky mají hodnotu Na první buňku ukazuje položka adresáře! První dvě buňky (0 a 1) tabulky mají speciální význam!
59
FAT16 - podrobněji Jedná se o zřetězené seznamy. Obsah buňky je ukazatel na další prvek seznamu! V poslední buňce je hodnota FFFF. Volné buňky mají hodnotu Na první buňku ukazuje položka adresáře! První dvě buňky (0 a 1) tabulky mají speciální význam!
60
Pozor: alokace místa na disku se neděje po sektorech ale clusterech!!!
FAT16 - podrobněji Pozor: alokace místa na disku se neděje po sektorech ale clusterech!!!
61
FS FAT Počet sektorů Velikost clusteru 1 512B 2 1kB 4 2kB 8 4kB 16 8kB
Aby nebyla tabulka FAT příliš veliká, alokuje se místo na disku nikoliv po sektorech a po tzv. clusterech. Cluster je souvislá skupina sektorů (1 až 64 (128 při instalaci NT)). Výhoda: menší FAT Nevýhoda: nevyužité místo na disku Počet sektorů Velikost clusteru 1 512B 2 1kB 4 2kB 8 4kB 16 8kB 32 16kB 64 32kB (128) (64kB)
62
FS FAT Cluster Aby nebyla tabulka FAT příliš veliká, alokuje se místo na disku nikoliv po sektorech a po tzv. clusterech. Cluster je souvislá skupina sektorů (1 až 64 (128 při instalaci NT)). Výhoda: menší FAT Nevýhoda: nevyužité místo na disku
63
FS FAT Cluster Aby nebyla tabulka FAT příliš veliká, alokuje se místo na disku nikoliv po sektorech a po tzv. clusterech. Cluster je souvislá skupina sektorů (1 až 64 (128 při instalaci NT)). Výhoda: menší FAT Nevýhoda: nevyužité místo na disku
64
FS FAT Cluster Aby nebyla tabulka FAT příliš veliká, alokuje se místo na disku nikoliv po sektorech a po tzv. clusterech. Cluster je souvislá skupina sektorů (1 až 64 (128 při instalaci NT)). Výhoda: menší FAT Nevýhoda: nevyužité místo na disku
65
FS FATxx Výhody Nevýhody Jednoduchá implementace „Dá se v něm vyznat“
Velké množství různých nástrojů Nevýhody Problémy s obnovou souborů Snadno se poškodí Není efektivní Nepodporuje advanced možnosti, například kompresi a kryptování!
66
Fragmentace souboru! Při smazání souboru je sice ve smazané položce adresáře dočasně uchována informace o tom, kde soubor začíná (například cluster 5), ale samotná FAT je vynulována, a proto nevíme, že soubor pokračuje na clusterech: 3, 9 a 10!!! Toto znemožňuje normálně obnovu fragmentovaného souboru při jeho smazání! Týká se MS DOS bez doplňků!!!
67
Adresář Položka adresáře obsahuje:
Jméno souboru nebo adresáře (8+3 znaky) Atributy R-pouze ke čtení A-Archiv bit S-Systémový H-neviditelný Název disku Adresář Datum a čas vytvoření Délku souboru v bytech Číslo prvního obsazeného clusteru!
68
Adresář VFAT (Virtual FAT) (LFN - Windows 95, MS DOS 7.x)
Pro možnost dlouhých jmen souborů a adresářů zvolil Microsoft poněkud hackerské řešení!!! Oficiální název je VFAT (Virtual FAT) První položka je kompatibilní se starou strukturou a obsahuje krátký název. Druhá a další položka obsahují pouze dlouhý název v UNICODE (1 znak=2 bajty)
69
Přehled FAT
70
Boot sektor Je to první sektor na disku
Respektive první sektor na partition!!! Obsahuje tzv. zaváděcí kód = loader. Je to program, který načte do paměti počítače OS a spustí ho. Obsahuje také data, která popisují parametry disku = BPB (Boot Parameter Block) Osahuje například: počet bajtů na sektor, počet sektorů na cluster, počet tabulek FAT, počet položek root adresáře, velikost FAT, atd.
71
(MBR) Master Boot Record and Disk Partitions
Lineární adresování sektorů Sektor N Sektor 0 Disk je rozdělen na části, které se chovají jako samostatný disk. Jejich interní struktura je stejná jako by se jednalo o skutečný disk. Mají tedy vlastní boot sektor, FAT atd. (pochopitelně pokud se jedná o FAT FS). Je tedy možné jeden fyzický disk rozdělit na několik logických disků, každý z nich může obsahovat jiný filesystém. Rozdělení fyzického disku je uloženo v MBR (Master Boot Record), který je fyzicky prvním sektorem na fyzickém disku.
72
Master Boot Record (MBR)
Je to první sektor na fyzickém disku. Obsahuje tzv. zaváděcí kód = loader. Je to program, který načte do paměti počítače boot sektor aktivní partition!!! Obsahuje také data, která popisují rozdělení fyzického disku na partitions Jedná se o tabulku o 4 řádcích, která obsahuje Typ partition Jestli je partition aktivní Umístění partition na disku
73
MBR
74
Partition table
75
Disk s jednou primární partition
76
Disk s jednou primární a jednou extended partition
77
Disk se dvěma primárními a dvěma logickými partition
78
Microsoft partition types (MS DOS)
79
Microsoft partition types Windows 95
80
Microsoft partition types Windows 95 OSR2
81
Některé další typy partitions
Celá tabulka má 0 až 255 hodnot. Není jednotná správa – čili různé méně známe systémy sdílejí stejná čísla!!!
82
Souborový systém – NTFS
NTFS = Windows NT file system Souborový systém používaný ve Windows NT, 2000, XP Podporuje kompresi dat Podpora velkých svazků Využití velkokapacitních zařízení typu RAID Kryptování souborů a adresářů Není kompatabilní s FAT systémem Podpora diskových kvót Navržen pro rychlý přístup k souborům
83
Souborový systém – NTFS
Criteria NTFS5 NTFS FAT32 FAT16 Operting System Windows 2000 Windows XP Windows NT Windows 2000 Windows XP Windows 98 Windows ME Windows 2000 Windows XP DOS All versions of Microsoft Windows Limitations Max Volume Size 2 TB 2 GB Max Files on Volume Nearly Unlimited ~ 65000 Max File Size Limit Only by Volume Size 4 GB Max Clusters Number 65 535 Max File Name Length Up to 255 Standard Extended - up to 255
84
Souborový systém – NTFS
Criteria NTFS5 NTFS FAT32 FAT16 Operting System W2k, WXP WNT, W2k WXP W98, ME, W2k, WXP DOS File System Features Unicode File Names Unicode Character Set System Character Set System Records Mirror MFT Mirror File Second Copy of FAT Boot Sector Location First and Last Sectors First Sector File Attributes Standard and Custom Standard and Custom Standard Set Alternate Streams Yes No Compression Encryption Object Permissions Disk Quotas Sparse Files Reparse Points Volume Mount Points
85
Souborový systém – NTFS
Criteria NTFS5 NTFS FAT32 FAT16 Operting System Windows 2000 Windows XP Windows NT Windows 2000 Windows XP Windows 98 Windows ME Windows 2000 Windows XP DOS All versions of Microsoft Windows Overall Performance Built-In Security Yes No Recoverability Performance Low on small volumes High on Large Low on small volumes High on Large High on small volumes Low on large Highest on small volumes Low on large Disk Space Economy Max Average Minimal on large volumes Fault Tolerance Minimal
86
KONEC
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.