導航:首頁 > 物理學科 > 文件在在外存的物理地址放在什麼中

文件在在外存的物理地址放在什麼中

發布時間:2022-09-08 18:03:24

1. 平時我們在計算機中存儲的文件是在內存儲器中存放著還是在外存儲器中存放著

所有的文件都存儲在外部存儲器裡面,硬碟、U盤、光碟和軟盤都是外部存儲器而內存無法長久保持數據,是一種隨機存儲器。

2. 什麼是物理地址

Windows 2000 使用基於分頁機制的虛擬內存。每個進程有4GB的虛擬地址空間。基於分頁機制,這4GB地址空間的一些部分被映射了物理內存,一些部分映射硬碟上的交換文件,一些部分什麼也沒有映射。程序中使用的都是4GB地址空間中的虛擬地址。而訪問物理內存,需要使用物理地址。

下面我們看看什麼是物理地址,什麼是虛擬地址。

物理地址 (physical address): 放在定址匯流排上的地址。放在定址匯流排上,如果是讀,電路根據這個地址每位的值就將相應地址的物理內存中的數據放到數據匯流排中傳輸。如果是寫,電路根據這個地址每位的值就將相應地址的物理內存中放入數據匯流排上的內容。物理內存是以位元組(8位)為單位編址的。

虛擬地址 (virtual address): 4G虛擬地址空間中的地址,程序中使用的都是虛擬地址。

如果CPU寄存器中的分頁標志位被設置,那麼執行內存操作的機器指令時,CPU會自動根據頁目錄和頁表中的信息,把虛擬地址轉換成物理地址,完成該指令。比如 mov eax,004227b8h ,這是把地址004227b8h處的值賦給寄存器的匯編代碼,004227b8這個地址就是虛擬址。CPU在執行這行代碼時,發現寄存器中的分頁標志位已經被設定,就自動完成虛擬地址到物理地址的轉換,使用物理地址取出值,完成指令。對於Intel CPU 來說,分頁標志位是寄存器CR0的第31位,為1表示使用分頁,為0表示不使用分頁。對於初始化之後的 Win2k 我們觀察 CR0 ,發現第31位為1。表明Win2k是使用分頁的。

使用了分頁機制之後,4G的地址空間被分成了固定大小的頁,每一頁或者被映射到物理內存,或者被映射到硬碟上的交換文件中,或者沒有映射任何東西。對於一般程序來說,4G的地址空間,只有一小部分映射了物理內存,大片大片的部分是沒有映射任何東西。物理內存也被分頁,來映射地址空間。對於32bit的Win2k,頁的大小是4K位元組。CPU用來把虛擬地址轉換成物理地址的信息存放在叫做頁目錄和頁表的結構里。

物理內存分頁,一個物理頁的大小為4K位元組,第0個物理頁從物理地址 0x00000000 處開始。由於頁的大小為4KB,就是0x1000位元組,所以第1頁從物理地址 0x00001000 處開始。第2頁從物理地址 0x00002000 處開始。可以看到由於頁的大小是4KB,所以只需要32bit的地址中高20bit來定址物理頁。

頁表,一個頁表的大小為4K位元組,放在一個物理頁中。由1024個4位元組的頁表項組成。頁表項的大小為4個位元組(32bit),所以一個頁表中有1024個頁表項。頁表中的每一項的內容(每項4個位元組,32bit)高20bit用來放一個物理頁的物理地址,低12bit放著一些標志。

頁目錄,一個頁目錄大小為4K位元組,放在一個物理頁中。由1024個4位元組的頁目錄項組成。頁目錄項的大小為4個位元組(32bit),所以一個頁目錄中有1024個頁目錄項。頁目錄中的每一項的內容(每項4個位元組)高20bit用來放一個頁表(頁表放在一個物理頁中)的物理地址,低12bit放著一些標志。

對於x86系統,頁目錄的物理地址放在CPU的CR3寄存器中。

CPU把虛擬地址轉換成物理地址:
一個虛擬地址,大小4個位元組(32bit),包含著找到物理地址的信息,分為3個部分:第22位到第31位這10位(最高10位)是頁目錄中的索引,第12位到第21位這10位是頁表中的索引,第0位到第11位這12位(低12位)是頁內偏移。對於一個要轉換成物理地址的虛擬地址,CPU首先根據CR3中的值,找到頁目錄所在的物理頁。然後根據虛擬地址的第22位到第31位這10位(最高的10bit)的值作為索引,找到相應的頁目錄項(PDE,page directory entry),頁目錄項中有這個虛擬地址所對應頁表的物理地址。有了頁表的物理地址,根據虛擬地址的第12位到第21位這10位的值作為索引,找到該頁表中相應的頁表項(PTE,page table entry),頁表項中就有這個虛擬地址所對應物理頁的物理地址。最後用虛擬地址的最低12位,也就是頁內偏移,加上這個物理頁的物理地址,就得到了該虛擬地址所對應的物理地址。

一個頁目錄有1024項,虛擬地址最高的10bit剛好可以索引1024項(2的10次方等於1024)。一個頁表也有1024項,虛擬地址中間部分的10bit,剛好索引1024項。虛擬地址最低的12bit(2的12次方等於4096),作為頁內偏移,剛好可以索引4KB,也就是一個物理頁中的每個位元組。

一個虛擬地址轉換成物理地址的計算過程就是,處理器通過CR3找到當前頁目錄所在物理頁,取虛擬地址的高10bit,然後把這10bit右移2bit(因為每個頁目錄項4個位元組長,右移2bit相當於乘4)得到在該頁中的地址,取出該地址處PDE(4個位元組),就找到了該虛擬地址對應頁表所在物理頁,取虛擬地址第12位到第21位這10位,然後把這10bit右移2bit(因為每個頁表項4個位元組長,右移2bit相當於乘4)得到在該頁中的地址,取出該地址處的PTE(4個位元組),就找到了該虛擬地址對應物理頁的地址,最後加上12bit的頁內偏移得到了物理地址。

32bit的一個指針,可以定址范圍0x00000000-0xFFFFFFFF,4GB大小。也就是說一個32bit的指針可以定址整個4GB地址空間的每一個位元組。一個頁表項負責4K的地址空間和物理內存的映射,一個頁表1024項,也就是負責1024*4k=4M的地址空間的映射。一個頁目錄項,對應一個頁表。一個頁目錄有1024項,也就對應著1024個頁表,每個頁表負責4M地址空間的映射。1024個頁表負責1024*4M=4G的地址空間映射。一個進程有一個頁目錄。所以以頁為單位,頁目錄和頁表可以保證4G的地址空間中的每頁和物理內存的映射。

每個進程都有自己的4G地址空間,從 0x00000000-0xFFFFFFFF 。通過每個進程自己的一套頁目錄和頁表來實現。由於每個進程有自己的頁目錄和頁表,所以每個進程的地址空間映射的物理內存是不一樣的。兩個進程的同一個虛擬地址處(如果都有物理內存映射)的值一般是不同的,因為他們往往對應不同的物理頁。

4G地址空間中低2G,0x00000000-0x7FFFFFFF 是用戶地址空間,4G地址空間中高2G,
0x80000000-0xFFFFFFFF 是系統地址空間。訪問系統地址空間需要程序有ring0的許可權。

3. 26 文件外存分配方式

目前,常用的外存分配方法有 連續分配 鏈接分配 索引分配 三種。採用不同的分配方式時,將形成不同的文件物理結構。

連續分配方式對應順序式文件結構,鏈接分配方式形成鏈接式文件結構,索引分配方式將形成索引式文件結構。有的系統(如DOS操作系統)對三種方法都支持,但是更普遍的是 一個系統只提供一種方法的支持

連續分配方法要求每個文件在磁碟上佔有一組連續的塊,如圖所示。這樣所形成的文件結構稱為 順序文件結構 ,此時的物理文件稱為 順序文件 。這種分配方式保證了邏輯文件中的的記錄順序與存儲器中的文件佔用盤塊的順序是 一致的

優點是 實現簡單、存取速度快 ,支持順序訪問和直接訪問,作業訪問磁碟時需要的尋道數和尋道時間最短。

缺點在於,文件長度 不宜動態增加 ,因為一個文件末尾後的盤塊可能已經分配給其他文件,一旦需要增加, 就需要大量移動盤塊。在外存上使用緊湊技術所花費的時間遠比內存緊湊一次所花費的時間多得多。

此外,反復增刪文件後會產生 外部碎片 (與內存管理分配方式中的碎 片相似),並且很難確定一個文件需要的空間大小,因而只適用於長度固定的文件。

鏈接分配是釆取 離散分配 的方式,消除了外部碎片,故而顯著地 提高了磁碟空間的利用率 ;又因為是根據文件的當前需求,為它分配必需的盤塊,當文件動態增長時,可以動態地再為它分配盤塊,故而 無需事先知道文件的大小 。此外,對文件的 增、刪、改也非常方便

鏈接分配又可以分為隱式鏈接和顯式鏈接兩種形式。

文件,目錄中每個目錄項都包括 指向鏈接文件第一盤塊和最後一個盤塊的指針 。磁碟塊分布在磁碟的任何地方,除最後一個盤塊外,每一個盤塊都有指向下一個盤塊的指針,這些指針對用戶是透明的。

為了提高檢索速度和減小指針所佔存儲空間,可以將幾個盤塊組成一個簇(cluster),雖然成倍 減少了訪問時間,以及指針存儲空間,但卻增大了內部碎片,改進很有限

顯示鏈接把用於鏈接文件各物理塊的指針,顯示地存放在內存的一張鏈接表中。該表在整個磁碟僅設置一張。

表的序號從0開始,直至N-1,N為盤塊總數,在每個表項中存放鏈接指針,即下一個盤塊號。

在該表中,凡是屬於某一文件的第一個盤塊號(鏈首指針所對應的盤塊號)均作為文件地址被填入相應的文件的FCB的物理地址欄位中。

由於查找記錄的過程是 在內存中進行的,因而提高了檢索速度,減少了訪問磁碟的次數 。由於分配給文件的所有盤塊號都在該表中,故把該表稱為文件分配表FAT(File Allocation Table)。

在打開某個文件時,只需把該文件佔用的盤塊號的編號調入內存即可, 無需把整個FAT調入內存 。為此,將每個文件所對應的盤塊號集中地放在一起,索引分配方式就是基於此想法所形成的一種分配方式。

其為每個文件分配一個索引表,再把分配給該文件的所有盤塊號都記錄在該索引塊中,因而該索引塊就是一個含有許多磁碟塊號的數組。在建立一個文件時,只需要在為之建立的目錄項中填上指向該索引塊的指針。

當文件太大時,索引塊太多,單級索引是低效的 。此時,為這些索引塊再建立一級索引,稱為第一級索引,還可再建立索引,稱為第二級索引等等。稱為多級索引分配。

在二級索引分配方式下,若每個盤塊的大小為1KB,每個盤塊號佔4個位元組,在一個索引塊可以存放256個盤塊號。則,在兩級索引時,最多可以包括存放文件的盤塊號總數為64K(256 * 256)個盤塊號,所允許文件最大長度為64MB。

若盤塊號為4KB,則一級索引的最大文件大小為4MB,二級索引的最大文件大小為4GB。

多種索引分配方式相結合 而形成的一種分配方式,如直接地址,一次間接地址,多次間接地址。

Unix SystemV的分配採用了三級索引分配方式。共設置了13個索引地址項。前10個:iaddr(0)~iaddr(9)為直接地址項,iaddr(10)為一次間接地址項,iaddr(11)為二次間接地址項,iaddr(12)為三次間接地址項。

4. 磁碟的相關知識

1
磁碟:磁碟的表面由一些磁性物質組成,可以用這些磁性物質來記錄二進制數據。
2
磁軌:磁碟的盤面被劃分成一個個磁軌。由內到外一圈圈的分布,一個「圈」就是一個磁軌。
3
扇區:一個磁軌又被劃分成一個個扇區,每個扇區就是一個「磁碟塊」。各個扇區存放的數據量相同。由於最內側磁軌上的扇區面積最小,因此數據密度最大。
END
如何在磁碟中讀/寫數據
1
需要把「磁頭」移動到想要讀/寫的扇區所在的磁軌。磁碟會轉起來,讓目標扇區從磁頭下面劃過,才能完成對扇區的讀/寫操作。
END
盤面、柱面
1
盤面:
一個碟片可能有兩個盤面。每一個盤面對應一個磁頭,所有的磁頭都是連在同一個磁臂上的,因此所有磁頭只能「共進退」。
2
柱面:
所有盤面中相對位置相同的磁軌組成柱面。相對位置是指由里到外數,是同一數的磁軌的位置。
END
磁碟的物理地址
1
可用(柱面號、盤面號、扇區號)來定位任意一個「磁碟塊」。在「文件的物理結構」中,我們經常提到文件數據存放在外存中的幾號塊,這個塊號就可以轉換成(柱面號、盤面號、扇區號)的地址形式。
2
可根據該地址讀取一個「塊」:
1、根據「柱面號」移動磁臂,讓磁頭指向指定柱面。
2、激活指定盤面對應的磁頭。
3、磁碟旋轉的過程中,指定的扇區會從磁頭下面劃過,這樣就完成了對指定扇區的讀/寫。

磁碟的分類
1
活動頭磁碟:
磁頭可以移動的稱為活動頭磁碟。磁臂可以來回伸縮來帶動磁頭定位磁軌。
2
固定頭磁碟:
磁頭不可移動的稱為固定頭磁碟。這種磁碟中每個磁軌有一個磁頭。
3
可換盤磁碟:
碟片可以更換的稱為可換盤磁碟。
4
固定盤磁碟:
碟片不可更換的稱為固定盤磁碟。

磁碟基本知識硬碟的DOS管理結構1.磁軌,扇區,柱面和磁頭數硬碟最基本的組成部分是由堅硬金屬材料製成的塗以磁性介質的碟片,不同容量硬碟的碟片數不等。每個碟片有兩面,都可記錄信息。碟片被分成許多扇形的區域,每個區域叫一個扇區,每個扇區可存儲128×2的N次方(N=0.1.2.3)位元組信息。在DOS中每扇區是128×2的2次方=512位元組,碟片表面上以碟片中心為圓心,不同半徑的同心圓稱為磁軌。硬碟中,不同碟片相同半徑的磁軌所組成的圓柱稱為柱面。磁軌與柱面都是表示不同半徑的圓,在許多場合,磁軌和柱面可以互換使用,我們知道,每個磁碟有兩個面,每個面都有一個磁頭,習慣用磁頭號來區分。扇區,磁軌(或柱面)和磁頭數構成了硬碟結構的基本參數,幫這些參數可以得到硬碟的容量,基計算公式為:存儲容量=磁頭數×磁軌(柱面)數×每道扇區數×每扇區位元組數要點:(1)硬碟有數個碟片,每碟片兩個面,每個面一個磁頭(2)碟片被劃分為多個扇形區域即扇區(3)同一碟片不同半徑的同心圓為磁軌(4)不同碟片相同半徑構成的圓柱面即柱面(5)公式:存儲容量=磁頭數×磁軌(柱面)數×每道扇區數×每扇區位元組數(6)信息記錄可表示為:××磁軌(柱面),××磁頭,××扇區2.簇「簇」是DOS進行分配的最小單位。當創建一個很小的文件時,如是一個位元組,則它在磁碟上並不是只佔一個位元組的空間,而是佔有整個一簇。DOS視不同的存儲介質(如軟盤,硬碟),不同容量的硬碟,簇的大小也不一樣。簇的大小可在稱為磁碟參數塊(BPB)中獲取。簇的概念僅適用於數據區。本點:(1)「簇」是DOS進行分配的最小單位。(2)不同的存儲介質,不同容量的硬碟,不同的DOS版本,簇的大小也不一樣。(3)簇的概念僅適用於數據區。3.DOS磁碟區域的劃分格式化好的硬碟,整個磁碟按所記錄數據的作用不同可分為主引導記錄(MBR:Main Boot Record),Dos引導記錄(DBRos Boot Record),文件分配表(FAT:File Assign Table),根目錄(BD:Boot Directory)和數據區。前5個重要信息在磁碟的外磁軌上,原因是外圈周長總大於內圈周長,也即外圈存儲密度要小些,可傷心性高些。要點:(1)整個硬碟可分為MBR,DBR,FAT,BD和數據區。(2)MBR,DBR,FAT,和BD位於磁碟外道。win2000注冊表修改:Microsoft Windows 2000 是一個強大的操作系統,為我們提供了以往Windows 9x從未有過的安全性能,可是你是否感覺某些地方的設置還不夠呢,這里就對Windows 2000 的注冊表進行一些修改來達到我們的目的

5. 操作系統-文件系統

人們對信息有存儲的需求,早期計算機信息在保存在紙帶上,存和讀都不方便,且容量很低,而存儲信息的需求未能得到滿足,到了磁碟存儲器的出現,對程序和數據等信息的管理的發展才得到質的飛躍。出現文件系統是需要把信息以一種單元,即文件的形式,存儲在磁碟或其它外部存儲介質上,導致了文件系統的出現。

文件系統是操作系統中統一管理信息資源的一種軟體。它管理文件的存儲、檢索、更新、提供安全可靠的共享和保護手段,並且方便用戶使用。從用戶的角度看,文件系統負責為用戶建立文件、讀寫文件、修改文件、復制文件和撤銷文件等,還能對文件按名存取。

文件是一組帶標識的、在邏輯上有完整意義的信息項的序列,這里的標識就是文件名,」信息項「構成了文件的內容。

外存是相對內存而言,主要用來存儲信息,其特點是斷電後仍可保存信息,容量大,速度較慢,成本較低等
外存儲設備通常由驅動部分和存儲介質兩部分組成,存儲介質又常被卷。

存儲介質有:磁帶、磁碟、光碟、快閃記憶體

其中磁帶是順序存儲,只能讀了前面磁帶的內容才能讀後面,存取都一樣,不能跳著讀取,因此磁帶適合存儲不經常變化的內容,比如放歌。

磁碟支持隨機讀取,磁碟由帶有讀寫磁頭的機械臂和磁碟組成,磁碟像光碟,上面有磁性材料。系統對磁碟初始化時,會劃分出一些同心圓,稱為磁軌,信息只能存儲在磁軌上,磁軌分會被分成多個弧段,稱為扇區,每個磁軌有4-32個扇區。使用時,驅動器的馬達帶去磁碟高速勻速旋轉,磁頭一直停留在盤面表面上方並可以在不同磁軌移動,當找到目標磁軌時,碰頭不動,磁碟依然轉動,這時經過磁頭的信息就被讀出來可寫進去。

光碟是激光作用下材料變化的非磁記錄介質。

快閃記憶體是電荷擦除,支持隨機存取,沒有機械運動部件,壽命和可靠性高。

文件可以從不同的維度來進行分類:
按用途的方式分類:

按文件組織形式分類:

文件邏輯結構就是用戶所看到的文件組織形式,文件邏輯結構是經過抽象的結構,所描述的是文件中信息組織形式。按邏輯結構可以把文件劃分成三類:無結構的字元流式文件(由位元組組成)、定長記錄文件和不定長記錄文件(由記錄組成);

文件的物理結構是指文件存儲在外儲設備上的結構,有三種存儲結構:順序存儲、鏈式存儲、索引存儲;

順序存儲:文件存在連續的空間上,只要知道到起始地址和長度就可以讀取文件。
優點:支持隨機存取、
缺點:不支持動態擴充,容易產生碎片。

鏈式存儲:文件存在不連續的物理塊中,文件控制塊保存第一個物理塊的指針,之後每個物理塊都有一個指針指向下一個物理塊地址,如FAT文件系統
優點:可以動態擴充,提高磁碟利用空間;修改添加快。
缺點:
1.可靠性低。若其中某個物理塊出錯會導致後面全部塊讀取不到。
2.存取速度慢,不適於隨機存取文件,需要從首個物理塊一直讀取到物理塊;

索引存儲:使用一張表來存儲索引,每個索引指向邏輯文件的信息塊。
優點:可以動態擴充,支持隨機存取;
缺點:較多的尋道次數和尋道時間;索引表本身增加了存儲空間的開銷。

文件目錄主要是用途是為了管理和索引文件,其結構簡單說是一張表,表中存儲著文件名、文件控制塊、物理地址,通過文件名可以快速的讀取到對應的文件。

一級目錄是一張線性表,優點是:結構簡單、實現簡單;缺點:無法解決不同用戶的文件名相同;文件多時查找慢。
二級目錄是分為主目錄和用戶目錄,主目錄給出所有用戶目錄所在物理位置; 而用戶目錄則給出所有文件的FCB;優點:不同用戶文件可以重名、查找速度比一級目錄快、能實現文件共享
多級目錄(樹形目錄)除了最低一級物理塊裝有文件信息外,其它每一級的目錄存儲的都是下一級的目錄或文件說明信息,多級目錄存在唯一的概目錄。優點是層次清楚、解決文件重名問題、查找速度快。

目錄是指文件路徑。
目錄項是是文件控制塊以一條記錄的形式存儲在目錄文件中。
目錄文件是多個文件控制塊集中在一起形成的文件。

參考:《操作系統》機械工業出版社 2017年版

6. 凱立德3410各文件夾和文件什麼作用

凱立德3410各文件夾和文件作用:文件目錄用於對單個文件的控制,它記錄文件的名字、文件長度、文件存放在外存上的物理地址,以及文件屬性和文件建立時間、日期等信息。

凱立德3410如果機器凱立德地圖文件中含有一個NaviResFile文件沒有其他解析度文件,就是800*480解析度,如果機器凱立德地圖文件裡面含有RES_800x480_C、RES_480x234_C、RES_480x272_C或者RES_320x240_C文件夾,那麼機器的解析度則是這些文件名字中的數字部分。

文件夾FAT:

文件夾在Win 9X下,FAT16支持的分區最大為2GB。我們知道計算機將信息保存在硬碟上稱為「簇」的區域內。使用的簇越小,保存信息的效率就越高。在FAT16的情況下,分區越大簇就相應的要大,存儲效率就越低,勢必造成存儲空間的浪費。

並且隨著計算機硬體和應用的不斷提高,FAT16文件系統已不能很好地適應系統的要求。在這種情況下,推出了增強的文件系統FAT32。

7. 文件目錄和目錄文件各起什麼作用目前廣泛採用的目錄結構形式是哪種它有什麼優點

文件目錄用於對單個文件的控制,它記錄文件的名字、文件長度、文件存放在外存上的物理地址,以及文件屬性和文件建立時間、日期等信息。

目錄文件是全部文件目錄組成的文件,用於整個文件系統的管理。

文件的目錄結構一般有三種形式:一級目錄、二級目錄、多級樹形目錄。目前廣泛採用的目錄結構形式是樹形目錄結構。它的主要優點是:檢索效率高,允許文件重名,確切反映了信息的層次結構並可以利用層次結構實現文件共享和保護。



(7)文件在在外存的物理地址放在什麼中擴展閱讀

在電子計算機或相關設備中,一個「目錄」或「文件夾」就是一個裝有數字文件系統的虛擬「容器」。在它裡面保存著一組文件和其它一些目錄(文件夾)。

一個典型的文件系統可能會包含成千上萬個目錄(文件夾)。多個文件通過存儲在一個目錄(文件夾)中,可以達到有組織的存儲文件的目的。在一個目錄(文件夾)中的另一個目錄(文件夾)被稱作它的子目錄(子文件夾)。這樣,這些目錄(文件夾)就構成了層次(hierarchy),或樹形結構。

大家習慣上把「目錄」叫做「文件夾」。

閱讀全文

與文件在在外存的物理地址放在什麼中相關的資料

熱點內容
word中化學式的數字怎麼打出來 瀏覽:743
乙酸乙酯化學式怎麼算 瀏覽:1408
沈陽初中的數學是什麼版本的 瀏覽:1358
華為手機家人共享如何查看地理位置 瀏覽:1049
一氧化碳還原氧化鋁化學方程式怎麼配平 瀏覽:890
數學c什麼意思是什麼意思是什麼 瀏覽:1416
中考初中地理如何補 瀏覽:1307
360瀏覽器歷史在哪裡下載迅雷下載 瀏覽:706
數學奧數卡怎麼辦 瀏覽:1396
如何回答地理是什麼 瀏覽:1030
win7如何刪除電腦文件瀏覽歷史 瀏覽:1060
大學物理實驗干什麼用的到 瀏覽:1490
二年級上冊數學框框怎麼填 瀏覽:1707
西安瑞禧生物科技有限公司怎麼樣 瀏覽:988
武大的分析化學怎麼樣 瀏覽:1252
ige電化學發光偏高怎麼辦 瀏覽:1341
學而思初中英語和語文怎麼樣 瀏覽:1660
下列哪個水飛薊素化學結構 瀏覽:1427
化學理學哪些專業好 瀏覽:1490
數學中的棱的意思是什麼 瀏覽:1066