Ⅰ 現代計算機儲存器的分級體系
在計算機系統中存儲層次可分為高速緩沖存儲器、主存儲器、輔助存儲器三級。高速緩沖存儲器用來改善主存儲器與中央處理器的速度匹配問題。輔助存儲器用於擴大存儲空間。
存儲系統的性能在計算機中的地位日趨重要,主要原因是:
1、馮諾伊曼體系結構是建築在存儲程序概念的基礎上,訪存操作約佔中央處理器(CPU)時間的70%左右。
2、存儲管理與組織的好壞影響到整機效率。
3、現代的信息處理,如圖像處理、資料庫、知識庫、語音識別、多媒體等對存儲系統的要求很高。
內儲存器(內存)
內儲存器直接與CPU相連接,由存取速度較快的電子元件構成,但儲存容量較小。用來存放當前運行程序的指令和數據,並直接與 CPU 交換信息,是 CPU 處理數據的主要來源。
內儲存器由許多儲存單元組成,每個單元能存放一個二進制數或一條由二進制編碼表示的指令。內儲存器是由隨機儲存器和只讀儲存器構成的。只讀存儲器(ROM,Read Only Memory)用於機器的開機初始化工作和系統默認的設備參數設置。
Ⅱ 【操作系統】01--存儲器的層次結構
操作系統存儲器,如何對存儲器進行有效的管理,直接影響著存儲器的利用率和系統性能。
1、存儲器的層次結構
2、程序的裝入和鏈接
3、連續分配存儲管理方式
4、分頁存儲管理方式
5、分段存儲管理方式
內部碎片和外部碎片
邏輯地址和物理地址
內存分配策略
分頁的地址變換,頁表的使用
分頁和分段的優缺點
1、存儲的層次結構
這個圖不怎麼看的清,總體是三個部分:存儲器的層次結構、程序的裝入和鏈接、連續分配存儲管理方式
====================
(1)內存分配——為每個進程分配一定的內存空間
(2)地址映射——把程序中所用的相對地址轉換成內存的物理地址
(3)內存保護——檢查地址的合法性,防止越界訪問
(4)內存擴充——解決「求大於供」的問題,採用虛擬存儲技術
內存分配
內存分配的主要任務是:為每一道程序分配內存空間,使它們「各得其所」;當程序撤消時,則收回它佔用的內存空間。分配時注意提高存儲器的利用率。
地址映射
目標程序所訪問的地址是邏輯地址集合的地址空間,而內存空間是內存中物理地址的集合,在多道程序環境下,這兩者是不一致的,因此,存儲管理必須提供地址映射功能,用於把程序地址空間中的邏輯地址轉換為內存空間中對應的物理地址。
內存保護
內存保護的任務是確保每道程序都在自己的內存空間運行,互不幹擾。保護系統程序區不被用戶侵犯(有意或無意的),不允許用戶程序讀寫不屬於自己地址空間的數據(系統區地址空間,其他用戶程序的地址空間)。
內存擴充
內存擴充的任務是從邏輯上來擴充內存容量,使用戶認為系統所擁有的內存空間遠比其實際的內存空間(硬體RAM)大的多。
【緩存都在其使用的工具之前,目的是為了減少訪問次數】
2.1 主存儲器
主存儲器是計算機系統中的一個主要部件,用於保存進程運行時的程序和數據,CPU的控制部件只能從主存儲器中取得指令和數據,數據能夠從主存儲器中讀取並將他們裝入到寄存器中,或者從寄存器存入到主存儲器,CPU與外圍設備交換的信息一般也依託於主存儲器地址空間。但是,主存儲器的訪問速度遠低於CPU執行指令的速度,於是引入了寄存機和告訴緩沖。
2.2 寄存器
寄存器訪問速度最快,能與CPU協調工作,價格昂貴,容量不大,寄存器用於加速存儲器的訪問速度,如用寄存器存放操作數,或用作地址寄存器加快地址轉換速度等。
2.3 高速緩存
高速緩存容量大於或遠大於寄存器,但小於內存,訪問速度高於主內存器,根據程序局部性原理,將主存中一些經常訪問的信息存放在高速緩存中, 減少訪問主存儲器的次數 ,可大幅度提高程序執行速度。通常,進程的程序和數據存放在主存,每當使用時,被臨時復制到高速緩存中,當CPU訪問一組特定信息時,首先檢查它是否在高速緩存中,如果已存在,則直接取出使用,否則,從主存中讀取信息。有的計算機系統設置了兩級或多級高速緩存,一級緩存速度最高,容量小,二級緩存容量稍大,速度稍慢。
2.4 磁碟緩存
磁碟的IO速度遠低於對主存的訪問速度,因此將頻繁使用的一部分磁碟數據和信息暫時存放在磁碟緩存中, 可減少訪問磁碟的次數, 磁碟緩存本身並不是一種實際存在的存儲介質,它依託於固定磁碟,提供對主存儲器空間的擴充,即利用主存中的存儲空間,來暫存從磁碟中讀出或寫入的信息,主存可以看做是輔存的高速緩存,因為,輔存中的數據必須復制到主存方能使用,反之,數據也必須先存在主存中,才能輸出到輔存。
主存儲器簡稱 主存或內存 , 用於保存程序運行時的指令和數據.
寄存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、數據和 地址 .
通常, 處理機從指存中讀出數據放入指令寄存器, 這一時間段我們稱之為取指周期; 處理機從數存中讀取數據放入數據寄存器, 再流入運算器, 這一時間段我們稱之為執行周期.
高速緩存和磁碟緩存:
高速緩沖存儲器是介於寄存器和存儲器之間的存儲器, 主要用於備份主存中較常用的數據, 用來減少處理機對主存儲器的訪問次數, 提高運行效率.
磁碟緩存主要用於暫時存放頻繁使用的一部分磁碟數據和信息, 以減少訪問磁碟的次數.
Ⅲ 操作系統的內存分配一般有哪幾種方式,各有什麼優缺點
變長:內存時比較靈活,但是易產生內存碎片。
定長:靈活性差,但分配效率較高,不會產生內存碎片。
Ⅳ plc中如何進行存儲分配
雖然各種PLC的CPU的最大定址空間各不相同,但是根據PLC的工作原理,其存儲空間一般包括以下三個區域:
(1)系統程序存儲區
(2)系統RAM存儲區(包括I/O映象區和系統軟設備等)
(3)用戶程序存儲區系統程序存儲區:在系統程序存儲區中存放著相當於計算機操作系統的系統程序。包括監控程序、管理程序、命令解釋程序、功能子程序、系統診斷子程序等。由製造廠商將其固化在EPROM中,用戶不能直接存取。它和硬體一起決定了該PLC的性能。
系統RAM存儲區:系統RAM存儲區包括I/O映象區以及各類軟設備,如:邏輯線圈;數據寄存器;計時器;計數器;變址寄存器;累加器等存儲器。
(1)I/O映象區:由於PLC投入運行後,只是在輸入采樣階段才依次讀入各輸入狀態和數據,在輸出刷新階段才將輸出的狀態和數據送至相應的外設。因此,它需要一定數量的存儲單元(RAM)以存放I/O的狀態和數據,這些單元稱作I/O映象區。一個開關量I/O佔用存儲單元中的一個位(bit),一個模擬量I/O佔用存儲單元中的一個字(16個bit)。因此整個I/O映象區可看作兩個部分組成:開關量I/O映象區;模擬量I/O映象區。
(2)系統軟設備存儲區 :除了I/O映象區區以外,系統RAM存儲區還包括PLC內部各類軟設備(邏輯線圈、計時器、計數器、數據寄存器和累加器等)的存儲區。該存儲區又分為具有失電保持的存儲區域和無失電保持的存儲區域,前者在PLC斷電時,由內部的鋰電池供電,數據不會遺失;後者當PLC斷電時,數據被清零。
1)邏輯線圈與開關輸出一樣,每個邏輯線圈佔用系統RAM存儲區中的一個位,但不能直接驅動外設,只供用戶在編程中使用,其作用類似於電器控制線路中的繼電器。另外,不同的PLC還提供數量不等的特殊邏輯線圈,具有不同的功能。
2)數據寄存器與模擬量I/O一樣,每個數據寄存器佔用系統RAM存儲區中的一個字(16 bits)。 另外,PLC還提供數量不等的特殊數據寄存器,具有不同的功能。
3)計時器
4)計數器
用戶程序存儲區
用戶程序存儲區存放用戶編制的用戶程序。不同類型的PLC,其存儲容量各不相同。
PLC的電源在整個系統中起著十分重要得作用。如果沒有一個良好的、可*得電源系統是無法正常工作的,因此PLC的製造商對電源的設計和製造也十分重視。
Ⅳ 多處理機中存儲器的地址有幾種分配方法
電腦存儲器分為內存儲器和外存儲器:內存又分為隨機存取存儲器(RAM)和只讀存儲器(ROM)兩種。ROM是只能讀出信息,不能寫入信息,這里的存放信息能長期保存而不受停電的影響,關機後開機,又可以從中讀出信息。因此ROM中常存放管理機器本身的監控程序和一些服務程序。RAM的特點是可讀可寫,但關機後裡面的信息自動消失。因此一般用來存儲電腦運行時所需要的程序,我們通常說的內存條指的就是RAM。外存是電腦中存儲信息的重要部件,它用來存儲大量數據,有硬碟、軟盤、光碟、U盤、移動硬碟等等。其中硬碟固定在電腦主機箱內,容量從幾十G到幾百G不等。 )SBBAX, H; )MOVAX,SEGTABL·給DMA控制邏輯指明數據傳送方向是輸入(主存寫)還是輸出(主存讀);·向DMA設備地址寄存器送入設備號,並啟動設備;·向DMA主存地址寄存器送入交換數據的主存起始地址;·對字計數器賦以交換數據的個數。我只負責整理
Ⅵ mc51單片機中通用的存儲器地址兩種分配方法
8051片內有4kB的程序存儲單元,其地址為0000H—0FFFH,其中一組特殊是0000H—0002H單元,系統復位後,PC為0000H,單片機從0000H單元開始執行程序 ,另一組特殊單元是0003H—002AH,這40個單元各有用途,它們被均勻地分為五段,它們的定義如下:
0003H—000AH 外部中斷0中斷地址區。
000BH—0012H 定時/計數器0中斷地址區。
0013H—001AH 外部中斷1中斷地址區。
001BH—0022H 定時/計數器1中斷地址區。
0023H—002AH 串列中斷地址區。
可見以上的40個單元是專門用於存放中斷處理程序的地址單元
二、數據存儲器
MCS-51內部RAM有128或256個位元組的用戶數據存儲(不同的型號有分別),它們是用於存放執行的中間結果和過程數據的。MCS-51的數據存儲器均可讀寫,部分單元還可以位定址。
1、 8051內部RAM共有256個單元,這256個單元共分為兩部分。其一是地址從00H—7FH單元(共128個位元組)為用戶數據RAM。從80H—FFH地址單元(也是128個位元組)為特殊寄存器(SFR)單元。從圖1中可清楚地看出它們的結構分布。
在00H—1FH共32個單元中被均勻地分為四塊,每塊包含八個8位寄存器,均以R0—R7來命名,我們常稱這些寄存器為通用寄存器。
內部RAM的20H—2FH單元為位定址區,既可作為一般單元用位元組定址,也可對它們的位進行定址。位定址區共有16個位元組,128個位,位地址為00H—7FH。。
Ⅶ 文件系統中分配存儲空間的基本單位是什麼
以塊為單位進行的。
為了提高存儲空間的利用率,對存儲空間的分配,通常是採用離散分配方式,以減少外存零頭,並以盤塊為基本分配單位。盤塊的大小通常為 1~8KB。
文件系統中,用於文件的描述和控制並與文件一一對應的是文件控制塊。文件存儲空間的管理就是塊空間的管理,包括空閑塊的分配、回收和組織等幾個問題。
(7)系統存儲器分配擴展閱讀:
位示圖是利用二進制的一位來表示磁碟中一個盤塊的使用情況。當其值為「0」時,表示對應的盤塊空閑;為「1」時,表示已分配。有的系統把「0」作為盤塊已分配的標志,把「1」作為空閑標志。(它們在本質上是相同的,都是用一位的兩種狀態來標志空閑和已分配兩種情況。)
磁碟上的所有盤塊都有一個二進制位與之對應,這樣,由所有盤塊所對應的位構成一個集合,稱為位示圖。通常可用 m × n 個位數來構成位示圖,並使 m × n 等於磁碟的總塊數。位示圖也可描述為一個二維數組 map:Var map: array of bit;
Ⅷ 操作系統存儲器動態分區分配的(快速適應演算法)問題
這里的分割指的是:如果空閑分區大小為8k,而程序所佔有的大小隻有6k,對於一般的分配演算法,會將空閑分區劃分成一個6k和一個2k,然後把6k分配給程序,把2k的重新加入到空閑分區鏈。而快速適應演算法會直接把8k都分配給程序。文中說的不會產生內存碎片指的是外碎片,而那空餘的2k屬於內碎片。
Ⅸ 操作系統存儲器在實現內存分配時 既然有了靈活的動態分配 為什麼還要有靜態分配
從操作系統管理的角度講,提供動態內存分配是為了讓應用程序運行時可以使用更大的內存空間,只受限於硬體配置;然而,一個應用程序正常運行必然要佔用一定的空間,比如用來保存基本運行變數的空間,所以操作系統會根據經驗值預分配一部分空間給應用程序,免得每個程序都要為一些基本的變數數據單獨申請動態空間,頻繁的內存分配會降低系統效率,而且還會增加程序員的無效工作量。
這種東西用規劃求解的套路去看,會清楚些。因素1,純靜態,得到的結果經常不是浪費資源的無意義佔用,就是不夠用;因素2,純動態,系統內存利用效率最高,但是頻繁的動態內存分配一樣會降低系統效率,同時增加程序員的工作量。根據總體目標,必然可以規劃出最優解,也就是那個動靜態配比。平衡各種互相制約的因素,平衡各種利益關系,多數靠規劃求解。