隨機存取程式

隨機存取程式

隨機存取是一種存取方式。將數據存入存儲器或從存儲器取出數據所需的時間與數據存儲位置無關。即在訪問或更新檔案中的記錄時,可不考慮檔案中記錄的排列次序或位置。隨機存取程式是對能隨機存取數據的存儲器進行控制的程式。

基本介紹

  • 中文名:隨機存取程式
  • 外文名:random access program
  • 學科:計算機
  • 定義:對隨機存取存儲器進行控制的程式
  • 有關術語:隨機存取
  • 領域:計算機系統
簡介,隨機存儲器類型,主存儲器,磁碟存儲器,設備驅動程式,設備驅動程式的功能,設備處理方式,

簡介

隨機存取程式是對能隨機存取數據的存儲器進行控制的程式。在計算機中,能進行隨機存取的存儲器有主存儲器和磁碟存儲器。隨機存取器主要功能是在定位隨機存取數據的位置,包括起始位置和終止位置,保證數據正確傳輸。磁碟存儲器的隨機存取是通過設備驅動程式實現的。

隨機存儲器類型

主存儲器

用於存放計算機要執行的指令和要處理的數據的、並由中央處理器直接訪問的快速隨機存儲器。主存儲器是計算機的一個重要組成部分。主存儲器的存取速度要比中央處理器的主頻慢很多倍,是影響整個計算機系統運行速度的重要因素之一。主存儲器是按地址存取信息的。它的工作原理大致如下:中央處理器將地址送到地址暫存器,並發出“讀出”或“寫入”命令。地址解碼器對地址進行解碼,以確定相應的存儲單元。如果是讀出命令,則將該單元的數據讀出並送至數據緩衝暫存器。如果是寫入命令,則將緩衝暫存器中的數據寫入該單元。在設計計算機時,為使整個系統速度匹配,人們採用各種辦法來提高主存儲器提供數據的速率。最常採用的方法是並行存儲結構。其中的一種是加大數據寬度,一次讀出多條指令或多個數據,另一種是採用多個存儲模組交叉存取。常見類型如下:
RAM是構成記憶體的主要部分,其內容可以根據需要隨時按地址讀出或寫入,以某種電觸發器的狀態存儲,斷電後信息無法保存,用於暫存數據,又可分為DRAM和SRAM兩種。RAM一般使用動態半導體存儲器件(DRAM)。因為CPU工作的速度比RAM的讀寫速度快,所以CPU讀寫RAM時需要花費時間等待,這樣就使CPU的工作速度下降。人們為了提高CPU讀寫程式和數據的速度,在RAM和CPU之間增加了高速快取(Cache)部件。Cache的內容是隨機存儲器(RAM)中部分存儲單元內容的副本。
ROM是唯讀存儲器,出廠時其內容由廠家用掩膜技術寫好,只可讀出,但無法改寫。信息已固化在存儲器中,一般用於存放系統程式BIOS和用於微程式控制。
PROM是可程式ROM,只能進行一次寫入操作(與ROM相同),但是可以在出廠後,由用戶使用特殊電子設備進行寫入。
EPROM是可擦除的PROM,可以讀出,也可以寫入。但是在一次寫操作之前必須用紫外線照射,以擦除所有信息,然後再用EPROM編程器寫入,可以寫多次。
EEPROM是電可擦除PROM,與EPROM相似,可以讀出也可寫入,而且在寫操作之前,不需要把以前內容先擦去,能夠直接對定址的位元組或塊進行修改。
閃速存儲器(Flash Memory),其特性介於EPROM與EEPROM之間。閃速存儲器也可使用電信號進行快速刪除操作,速度遠快於EEPROM。但不能進行位元組級別的刪除操作,其集成度高於EEPROM。

磁碟存儲器

利用磁記錄技術在旋轉的圓盤介質上進行數據存儲的輔助存儲器。其容量比主存儲器大得多,在計算機系統中常用來存放作業系統、程式和數據,並且它們可長期保存在磁碟上。與其他輔助存儲器相比,磁碟存儲器具有較大的存儲容量和較快的數據傳輸速率。絕大多數計算機都配備它。它通常由磁碟、磁碟驅動器和磁碟控制組成。其主要技術指標有磁記錄密度、存儲容量、定址時間和傳輸速率。
磁碟存儲器的主要部件是磁碟,它是表面塗布有磁性材料、用以記錄數據的圓盤。磁碟根據基的不同分為硬碟和軟碟。硬碟在存儲容量和信息存取速度上都優於軟碟,但軟碟成本低,重量輕,便於攜帶,其中直徑在200毫米以下的硬碟和直徑為133毫米的單片可換式軟碟在微型計算機中得到廣泛套用。

設備驅動程式

設備驅動程式通常又稱為設備處理程式,它是 I/O 進程與設備控制器之間的通信程式,又由於它常以進程的形式存在,故以後就簡稱之為設備驅動進程。其主要任務是接收上層軟體發來的抽象 I/O 要求,如 read 或 write 命令,在把它轉換為具體要求後,傳送給設備控制器,啟動設備去執行;此外,它也將由設備控制器發來的信號傳送給上層軟體。由於驅動程式與硬體密切相關,故應為每一類設備配置一種驅動程式;有時也可為非常類似的兩類設備配置一個驅動程式。例如,印表機和顯示器需要不同的驅動程式,但 SCSI 磁碟驅動程式通常可以處理不同大小和不同速度的多個 SCSI 磁碟, 甚至還可以處理 SCSI CD-ROM。

設備驅動程式的功能

為了實現 I/O 進程與設備控制器之間的通信,設備驅動程式應具有以下功能:
(1) 接收由設備獨立性軟體發來的命令和參數,並將命令中的抽象要求轉換為具體要求,例如,將磁碟塊號轉換為磁碟的盤面、磁軌號及扇區號。
(2) 檢查用戶 I/O 請求的合法性,了解 I/O 設備的狀態,傳遞有關參數,設定設備的工作方式。
(3) 發出 I/O 命令。如果設備空閒,便立即啟動 I/O 設備去完成指定的 I/O 操作;如果設備處於忙碌狀態,則將請求者的請求塊掛在設備佇列上等待。
(4) 及時回響由控制器或通道發來的中斷請求, 並根據其中斷類型調用相應的中斷處理程式進行處理。
(5) 對於設定有通道的計算機系統,驅動程式還應能夠根據用戶的 I/O 請求,自動地構成通道程式。

設備處理方式

在不同的作業系統中所採用的設備處理方式並不完全相同。根據在設備處理時是否設定進程,以及設定什麼樣的進程而把設備處理方式分成以下三類:
(1) 為每一類設備設定一個進程,專門用於執行這類設備的 I/O 操作。比如,為所有的互動式終端設定一個互動式終端進程;又如,為同一類型的印表機設定一個列印進程。
(2) 在整個系統中設定一個 I/O 進程,專門用於執行系統中所有各類設備的 I/O 操作。也可以設定一個輸入進程和一個輸出進程,分別處理系統中所有各類設備的輸入或輸出操作。
(3) 不設定專門的設備處理進程,而只為各類設備設定相應的設備處理程式(模組),供用戶進程或系統進程調用。

相關詞條

熱門詞條

聯絡我們