Ⅰ Windows與linux操作系統對磁碟和文件的管理方式有什麼異同點(求詳細)
Windows與Linux操作系統對磁碟和文件的管理方式區別為:文件格式不同、空間不同、碎片整理不同。Windows與Linux操作系統都是以一組磁碟管理應用程序的形式提供給用戶。在硬碟中產生臨時交換文件,用該文件所佔用的硬碟空間虛擬成內存。
一、文件格式不同
1、Windows操作系統:Windows操作系統使用FAT、NTFS文件格式。
2、Linux操作系統:Linux操作系統使用ext2、ext3、ext4文件格式。
二、空間不同
1、Windows操作系統:Windows操作系統的磁碟驅動器上有很多扇區,每個扇區都有存放一小段數據。大文件的存儲需要佔用很多不同的扇區。
2、Linux操作系統:Linux操作系統把所有文件都分散到了整個磁碟上,每兩個文件之間都留有相當巨大的空閑空間。
三、碎片整理不同
1、Windows操作系統:當文件被修改、體積增加時,Windows操作系統嘗試把文件新增的部分存放到緊鄰原始文件的扇區里。但周邊已經沒連續的足夠扇區空間了,文件需要被分割成數段。所以需要一個碎片整理工具。
2、Linux操作系統:當文件被修改、體積增加時,Linux操作系統通常有足夠的空間來擴展,一旦有碎片產生時,文件系統會嘗試移動整個文件來消除碎片。所以不需要一個碎片整理工具。
Ⅱ linux系統在 目錄存放系統
我們安裝好linux系統後,linux系統也會像windows系統一樣,自動生成很多的文件和目錄,這些目錄都包含了不同的含義。下面,我們就來介紹一下這些目錄都代表著什麼?以及,在命令行界面,我們如何在不同的目錄之間切換。
一、linux系統目錄結構。
我們這里介紹的是linux系統的常規目錄結構,不管什麼版本的linux系統,一般都會包括以下這些目錄。
bin: linux命令目錄(二進制)。
sbin: linux命令目錄(起級管理員使用),s就是Super User的意思。
boot: linux啟動目錄,存有linux內核 (引導、長/皮鞋)。
dev: linux存放硬體目錄,以抽象的文件形式存放(device設備)。
etc: linux配置文件目錄。
lib: linux系統函數庫文件目錄,相當於window中的.dll文件。
mnt: linux掛載用,早期版本只有這一個掛載,建議掛載額外設備,如:U盤、移動硬碟和分區。
medie: linux掛載用,系統建議掛載媒體設備。
misc: linux掛載用,建議掛載NFS服務的共享目錄。
opt: linux大型軟體安裝目錄。
sys: linux虛擬文件系統,包含底層硬體的信息,保存在內存當中,主要保存內核相關信息。
tmp: linux存放臨時文件,會定期自動刪除。
usr: linux一般應用程序默認安裝目錄 【 unix soft resource 】。
var: linux動態數據及進程改變保存位置(如日誌、郵件、緩存、網站 )。
home: linux用戶的主目錄家目錄,子目錄以用戶名為文件夾名。
root: linux起級管理員目錄。
proc: linux虛擬文件夾,存在於內存中,保存著系統的實時信息,如內存、CPU等硬體信息。
當然,不同的發行版本,有可能會或多或少地添加一些自己的目錄。
二、如何在目錄之間進行切換?
linux的目錄切換命令,跟windows系統的dos下的命令基本上一樣。如果使用過dos的,那在linux系統下切換目錄就不是難事了。
1、切換到當前用戶的家目錄。我們只需要在命令行界面輸入如下命令,就可以切換到當前用戶的家目錄:
cd
這時,我們可以在命令行界面中看到,當前目錄是~ 位置,~代表的是當前用戶的家目錄。如下圖:
2、切換到指定的目錄。下面的命令是切換到 /home/目錄,是以絕對路的形式來切換。
cd /home
如果我們已經在一個目錄里了,要想切換到同級目錄或上級目錄的同級目錄,就必須使用絕對路徑。上面的命令切換後,當前目錄換成了home。如下圖:
3、切換到上一個目錄。 切換到上一個目錄,即切換到當前目錄的前一個目錄。命令如下:
cd -
我們當前目錄是home,輸入這個命令後,就又切回到當前用戶家目錄了。如下圖:
4、切換到上一級目錄。以相對路徑的形式切換。命令如下:
cd ..
一個點代表的是自己,這里的兩個點..代表的是上一級目錄(父目錄)。
5、切換到當前目錄下的子目錄。下面的這個命令是切換到當前目錄下的gao目錄里。
cd gao
如果要切換到其它用戶的家目錄,必須是管理員,普通用戶沒有這個許可權。
6、切換到根目錄。有時,我們進入目錄比較深,有好幾級了,這時,我們可以通過如下命令直接回到linux根目錄
cd /
這里的/代表的就是linux系統的根目錄,也是linux系統的最大的目錄,上面介紹的所有目錄都是存放在這個根目錄里的。
好了,上面我們系統地介紹了一下linux系統的目錄整體結構,以及如何在這些目錄之間進行切換。操作很簡單,相信大家也很容易就能上手。
Ⅲ linux存儲問題
1、安裝oracle軟體時來,只裝軟體不要源創建實例。
2、兩台linux系統你是想用熱備份還是冷備份?如果熱備份需要安裝HA軟體,如果只做冷備份就無所謂了。
3、使用linux的硬碟命令對陣列存儲進行分區。資料庫你是想使用裸設備還是文件系統,如果是裸設備需要創建裸設備,文件系統就要創建文件系統了。
4、將裸設備或文件系統連接到oracle下的./oradata目錄下
5、創建資料庫實例,指定安裝目錄及文件。
Ⅳ Linux進程內存管理方法
Linux系統提供了復雜的存儲管理系統,使得進程所能訪問的內存達到4GB。在Linux系統中,進程的4GB內存空間被分為兩個部分——用戶空間與內核空間。用戶空間的地址一般分布為0~3GB(即PAGE_OFFSET,在Ox86中它等於OxC0000000),這樣,剩下的3~4GB為內核空間,用戶進程通常只能訪問用戶空間的虛擬地址,不能訪問內核空間的虛擬地址。用戶進程只有通過系統調用(代表用戶進程在內核態執行)等方式才可以訪問到內核空間。每個進程的用戶空間都是完全獨立、互不相乾的,用戶進程各自有不同的頁表。而內核空間是由內核負責映射,它並不會跟著進程改變,是固定的。內核空間的虛擬地址到物理地址映射是被所有進程共享的,內核的虛擬空間獨立於其他程序。Linux中1GB的內核地址空間又被劃分為物理內存映射區、虛擬內存分配區、高端頁面映射區、專用頁面映射區和系統保留映射區這幾個區域。對於x86系統而言,一般情況下,物理內存映射區最大長度為896MB,系統的物理內存被順序映射在內核空間的這個區域中。當系統物理內存大於896MB時,超過物理內存映射區的那部分內存稱為高端內存(而未超過物理內存映射區的內存通常被稱為常規內存),內核在存取高端內存時必須將它們映射到高端頁面映射區。Linux保留內核空間最頂部FIXADDR_TOP~4GB的區域作為保留區。當系統物理內存超過4GB時,必須使用CPU的擴展分頁(PAE)模式所提供的64位頁目錄項才能存取到4GB以上的物理內存,這需要CPU的支持。加入了PAE功能的Intel Pentium Pro及以後的CPU允許內存最大可配置到64GB,它們具備36位物理地址空間定址能力。由此可見,對於32位的x86而言,在3~4GB之間的內核空間中,從低地址到高地址依次為:物理內存映射區隔離帶vmalloc虛擬內存分配器區隔離帶高端內存映射區專用頁面映射區保留區。
Ⅳ linux 的文件系統是什麼
樓上正解,Linux現在一般常使用的就是ext2、ext3、ext4(最新)的。交換分區SWAP
Ⅵ Linux內存系統
維基網路——虛擬內存定義
All about Linux swap space
Linux將物理RAM (Random Access Memory) 劃分為稱為頁面的內存塊。交換是將一頁內存復制到硬碟上的預配置空間(稱為交換空間)以釋放改內存頁面上的過程。物理內存和交換空間的組合就是可用的虛擬內存量。
虛擬內存的那點事兒
進程是與其他進程共享CPU和內存資源的。為了有效的管理內存並減少出錯,現代操作系統提供了一種對主存的抽象概念,即:虛擬內存( Virtual Memory )。 虛擬內存為每個進程提供一個一致的,私有的地址空間,每個進程擁有一片連續完整的內存空間。
正如 維基網路 所說,虛擬內存不只是「使用硬碟空間來擴展內存」的技術。 虛擬內存的重要意義是它定義了一個連續的虛擬地址空間, 使得程序編寫難度降低。並且, 把內存擴展到硬碟空間只是使用虛擬內存的必然結果,虛擬內存空間會存在硬碟中,並且會被全部放入內存中緩沖(按需),有的操作系統還會在內存不夠的情況下,將一進程的內存全部放入硬碟空間中,並在切換到進程時再從硬碟讀取 (這也是Windows會經常假死的原因...)。
虛擬內存主要提供了如下三個重要的能力:
內存通常被組織為一個由M個連續的位元組大小的單元組成的數組。每個位元組都有一個唯一的物理地址 (Physical Address PA) ,作為到數組的索引。
CPU訪問內存最簡單直接的方法就是使用物理地址,這種定址方式稱為 物理定址 。
現代計算機使用的是一種被稱為虛擬定址 (Virtual Addressing) 的定址方式。 使用虛擬定址,CPU需要將虛擬地址翻譯成物理地址,這樣才能訪問到真實的物理內存。
虛擬定址需要硬體與操作系統之間相互合作。 CPU中含有一個被稱為內存管理單元 (Memory Management Unit,MMU) 的硬體,它的功能是將虛擬地址轉換稱為物理地址,MMU需要藉助存放在內存中的 頁表 來動態翻譯虛擬地址,該頁表由操作系統管理。
分頁表是一種數據結構,它用於計算機操作系統中虛擬內存系統,其存儲了虛擬地址到物理地址之間的映射。虛擬地址在訪問進程中是唯一的,而物理地址在硬體(比如內存)中是唯一的。
在操作系統中使用 虛擬內存 ,每個進程會認為使用一塊大的連續的內存,事實上,每個進程的內存散布在 物理內存 的不同區域。或者可能被調出到備份存儲中(一般是硬碟)。當一個進程請求自己的內存,操作系統負責把程序生成的虛擬地址,映射到實際存儲的物理內存上。操作系統在 分頁表 中存儲虛擬地址到物理地址的映射。每個映射被稱為 分頁表項(page table entry ,PTE) 。
在一個簡單的地址空間方案中,由虛擬地址定址的頁與物理內存中的幀之間的關系。物理內存可以包含屬於許多進程的頁。如果不經常使用,或者物理內存已滿,可以將頁面分頁到磁碟。在上圖中,並非所有頁面都在物理內存中。
虛擬地址到物理地址的轉換(即虛擬內存的管理)、內存保護、CPU高速緩存的控制。
現代的內存管理單元是以 頁 的方式,分割虛擬地址空間(處理器使用的地址范圍)的;頁的大小是2的n次方,通常為幾KB(位元組)。地址尾部的n位(頁大小的2的次方數)作為頁內的偏移量保持不變。其餘的地址位(address)為(虛擬)頁號。
內存管理單元通常藉助一種叫做轉譯旁觀緩沖器(Translation Lookaside Buffer,TLB)和相聯高速緩存來將虛擬頁號轉換為物理頁號。當後備緩沖器中沒有轉換記錄時,則使用一種較慢的機制,其中包括專用硬體的數據結構或軟體輔助手段。這個數據結構稱為 分頁表 ,頁表中的數據叫做 分頁表項 (page table entry PTE)。物理頁號結合頁偏移量便提供了完整的物理地址。
頁表 或 轉換後備緩沖器數據項應該包括的信息有:
有時候,TLB和PTE會 禁止對虛擬頁訪問 ,這可能是因為沒有RAM與虛擬頁相關聯。如果是這種情況,MMU將向CPU發出頁錯誤的信號,操作系統將進行處理,也許會尋找RAM的空白幀,同時建立一個新的PTE將之映射到所請求的虛擬地址。如果沒有空閑的RAM,可能必須關閉一個已經存在的頁面,使用一些替換演算法,將之保存到磁碟中(這被稱為頁面調度)。
當需要將虛擬地址轉換為物理地址時,首先搜索TLB,如果找到匹配(TLB)命中,則返回物理地址並繼續存儲器訪問。然而,如果沒有匹配(稱為TLB未命中),則MMU或操作系統TLB未命中處理器通常會查找 頁表 中的地址映射以查看是否存在映射(頁面遍歷),如果存在,則將其寫回TLB(這必須完成,因為硬體通過虛擬存儲器系統中的TLB訪問存儲器),並且重啟錯誤指令(這也可以並行發生)。此後續轉換找到TLB命中,並且內存訪問將繼續。
虛擬地址到物理地址的轉換過程,如果虛擬內存不存在與TLB,轉換會被重置並通過分頁表和硬體尋找。
通常情況下,用於處理此中斷的程序是操作系統的一部分。如果操作系統判斷此次訪問有效,那麼 操作系統會嘗試將相關的分頁從硬碟上的虛擬內存文件調入內存。 而如果訪問是不被允許的,那麼操作系統通常會結束相關的進程。
雖然叫做「頁缺失」錯誤,但實際上這並不一定是一種錯誤。而且這一機制是利用虛擬內存來增加程序可用內存空間。
發生這種情況的可能性:
當原程序再次需要該頁內的數據時,如果這一頁確實沒有被分配出去,那麼系統只需要重新為該頁在MMU內注冊映射即可。
操作系統需要:
硬性頁缺失導致的性能損失是很大的。
另外,有些操作系統會將程序的一部分延遲到需要使用的時候再載入入內存執行,以此提升性能。這一特性也是通過捕獲硬性頁缺失達到的。
當硬性頁缺失過於頻繁發生時,稱發生 系統顛簸。
具體動作與所使用的操作系統有關,比如Windows會使用異常機制向程序報告,而類Unix系統則使用信號機制。
盡管在整個運行過程中,程序引用不同的頁面總數(也就是虛擬內存大小)可能超出了物理存儲器(DRAM)總大小,但是程序常常在較小的活動頁面上活動,這個集合叫做工作集或者常駐集。在工作集被緩存後,對它的反復調用會使程序命中提高,從而提高性能。
大部分的程序都可以在存儲器獲取數據和讀取中達到穩定的狀態,當程序達到穩定狀態時,存儲器的使用量通常都不會太大。虛擬內存雖然可以有效率控制存儲器的使用, 但是大量的頁缺失還是造成了系統遲緩的主要因素。 當工作集的大小超過物理存儲器大小,程序將會發生一種不幸的情況,這種情況稱為 「顛簸」 ,頁面將不停的寫入、釋放、讀取,由於大量的丟失(而非命中)而損失極大性能。用戶可以增加隨機存取存儲器的大小或是減少同時在系統里運行程序的數量來降低系統顛簸的記錄。
推薦閱讀:
操作系統--分頁(一)
操作系統實現(二):分頁和物理內存管理
Ⅶ Linux操作系統的主要組成部分是什麼
Linux系統
一般有4個主要部分:內核、shell、文件系統和應用程序。內核、shell和文件系統一起形成了基本的
操作系統結構
,它們使得用戶可以運行程序、管理文件並使用系統。
一.
Linux內核
內核是操作系統的核心,具有很多最基本功能,如
虛擬內存
、多任務、共享庫、需求載入、
可執行程序
和TCP/
IP網路
功能。Linux內核的模塊分為以下幾個部分:
存儲管理
、CPU和
進程管理
、文件系統、設備管理和驅動、網路通信、系統的初始化和
系統調用
等。
二.Linux
shell
shell是系統的用戶界面,提供了用戶與內核進行交互操作的一種介面。它接收用戶輸入的命令並把它送入內核去執行,是一個命令
解釋器
。另外,
shell編程
語言具有普通編程語言的很多特點,用這種編程語言編寫的
shell程序
與其他應用程序具有同樣的效果。
三.
Linux文件系統
文件系統是文件存放在磁碟等存儲設備上的組織方法。Linux系統能支持多種目前流行的文件系統,如
EXT2
、
EXT3
、FAT、
FAT32
、VFAT和
ISO9660
。
四.Linux應用程序
標準的Linux系統一般都有一套都有稱為應用程序的
程序集
,它包括
文本編輯器
、編程語言、XWindow、
辦公套件
、Internet工具和資料庫等。