沒有記憶體條的情況下,能不能用硬碟代替記憶體條執行系統?

時間 2021-05-11 23:42:56

1樓:

理論上可以,但現有體系架構下,是不可以的,而且速度也會極慢。嵌入式的話,在nor flash上直接執行是正常操作,可以算是廣義上的「硬碟」吧。

2樓:Luv Letter

一種特殊的儲存, NOR Flash 允許被當作記憶體用.

這種技術叫做 Execute in place, XIP, 原地執行.

需要的條件有:

儲存介質提供的介面和記憶體介面相同

必須支援隨機訪問而且速度要快

如果有檔案系統, 需要支援對映特性

程式裡的內容無需被改動, 即 NOR Flash 通常存的是純指令/.data 而非棧和堆

以及通常來說一些嵌入式系統支援這個特性, 比如 Windows CE(到 Windows Phone 7 都帶著這個特性)

當然可以寫的記憶體還是少不了的, 只不過很多控制器還自己帶了可定址的 SRAM 作為記憶體搭配 NOR Flash 來用...

桌面 CPU 就別想了.

3樓:dione

其他回答都在說不能,我偏要說能。

看下傳統計算機的定義,名字由英文翻譯過來。記憶體其實應該叫記憶體,儲存cpu執行中的程式和資料檔案。硬碟應該叫磁碟,沒什麼特別的定義主要是儲存斷電的資料。

問題是,現在硬碟不都是磁儲存結構,磁儲存結構不一定要有盤。隨著計算機技術的發展記憶體和硬碟兩者的定義已經非常模糊了,我來舉幾個例子:

美國德儀有個專利叫鐵電儲存器,主要用在他們的fpga和超低功耗微控制器上,這個東西有個特性,由於沒有電容結構,讀不耗電,不用重新整理,掉電儲存,並且延遲超低。用鐵電儲存器當記憶體,可以把系統設計成隨時關機,關機後記憶體不用初始化直接接著執行程式。

因特爾有個專利叫傲騰記憶體,別看民用版只是個pcie通道的ssd,用來加速硬碟,企業版志強處理器的傲騰是真插在記憶體插槽上的。

ramdisk軟體大家應該知道,是用來在記憶體裡虛擬出磁碟空間提供乙個超高速的磁碟空間。但是有沒有人知道在固態磁碟還高高在上的幾年,有個民用的黑科技是物理ramdisk,直接用插ddr了記憶體條的fpga板加塊電池做sata硬碟用。如果記憶體不夠當然是直接拔了「硬碟」當「記憶體」用。

在超算中心,有專門的記憶體櫃當硬碟用為計算節點提供高速儲存,也是插滿了記憶體條「硬碟」

4樓:於冬

看了大多數回答,我想一大半的人都不是計算機專業的吧…?

首先明確答案:不行

延伸一下,在現有電子計算機體系架構下,是不可能的。

解釋一下:

記憶體之所以叫記憶體,是因為他的標準稱呼是「內部儲存器」。馮諾依曼計算機:),就這麼叫吧…它的基本定義是把計算機分成主機和外部裝置兩大部分,記憶體看名字就知道,它是主機內部的儲存器,而硬碟是「外部儲存器」 ,根本不是一類東西,所以在不修改計算機體系結構的情況下,根本不可能互相替代。

計算機工作原理就是將程式存檔於記憶體中,由cpu順序執行,記憶體是具有直接定址能力的,這個過程由硬體自動完成。記憶體的大小受計算機匯流排限制,是有明確的極限的,這都和硬碟有本質的不同…

以上內容,任何乙個中專一年級以上的計算機相關專業的學生都學過……補充一下,那些說自己寫個作業系統就可以實現的,我不知道你懂不懂作業系統,但是我知道你根本不懂什麼是馮諾依曼。

5樓:船長

我來說個簡單的:訪問記憶體條不需要驅動程式,訪問硬碟需要驅動程式,驅動程式的執行需要訪問記憶體條——或者,在你的假設中,硬碟。

所以說,你這個搞法類似於抓住頭髮把自己拎起來。

6樓:

當然可以了,兩個方案:

1,自己重寫作業系統,這個實現起來比較容易一些。在bootloader初始化記憶體之前,它就是不帶記憶體執行的,你自己的系統不要用記憶體,把指令和資料load到cpu的cache裡面執行。

2,改cpu架構…如果不修改作業系統的話應該也可以,難度比較大,畢竟你要自己修改對應cpu指令的執行方式,由一串複雜的操作來代替簡單的記憶體操作,這個工作量比自己寫作業系統大多了。想想就頭疼。當然單純的介面轉換還是很容易實現,弄個fpga就好了,但協議的更改會很複雜,要讓cpu hold住等待資料傳輸結束……

上面好多答案概念都是錯了

7樓:pansz

特定狀態下,經過改造,如果能改造出硬碟當記憶體用的介面,並且在介面上限制可訪問記憶體的總大小,那就可以。

為什麼這麼做CPU也能接收,而不是造成不正常的等待?

原因在於:通常系統的記憶體並不大,而硬碟相對比較大,硬碟本身帶有硬體快取,當你使用的記憶體大小不超過硬碟的硬體快取時,實質上你的硬碟始終只讀寫硬體快取。

假如這塊硬碟配備了非常高速的類似記憶體一樣的快取,那麼它的響應速度將可能接近記憶體的響應速度。如果這塊硬碟快取的本質它就是記憶體,那麼它確實可以具有記憶體類似的訪問特性,可以當作記憶體用。

但如果這塊硬碟的硬體快取其實是類似SSD而不是類似記憶體的機制,那麼也還是不行的,畢竟SSD的寫入速度不可控,而且SSD壽命太坑,這電腦用幾天就歇菜了。

所以,或許可以這麼用,但前提是你的硬碟本身有記憶體當作快取,這麼用的實質是拿硬碟的硬體快取在當記憶體。

8樓:醉臥沙場

不能,或者說不直接能。機械硬碟不能作為記憶體使用的限制條件包括但不限於以下三條:

機械硬碟太太太太……慢。

機械硬碟的最小訪問單元遠大於乙個位元組。

即使不考慮速度因素的話(這其實是很大的因素),硬碟在設計的時候都是有sector size的,硬碟為什麼叫塊裝置就是因為它是按塊訪問的,不是乙個位元組乙個位元組的。

常見的塊大小是節和4k位元組,以節為sector size的硬碟為例,也就是其不管是讀還是寫,一次都要對至少512個位元組進行操作,典型的就是機械硬碟的乙個磁軌上的乙個扇區大小。這是硬碟的最小訪問單元,不能比這個再小了。而記憶體需要這個訪問粒度是位元組。

3. 機械硬碟還有乙個很致命的問題,就是不能隨機訪問。

機械硬碟的原理導致其訪問時受到磁頭所在位置和碟片轉動位置的限制,不能做到「指哪打哪」。這是記憶體,或者說CPU通過位址匯流排訪問時不能接受的。RAM的第乙個字母R就是隨機這個單詞的首字母,可見隨機對於記憶體的重要性。

當然,你要是說絕對不能,那也不能這麼說。計算機界有一項非常常用的技術手段——map!很多邏輯上不能的是都可以通過一層或幾層map做到可行。

但是你說這樣還算不算機械硬碟了,這就是個純扯皮的事了。另外隨著儲存技術的進步,非易失性的可讀取的儲存器作為記憶體的技術越來越成熟,限制的條件無非是「速度」、「成本」、「壽命」等。

9樓:eric

可以是可以,暈倒死系統就有虛擬記憶體設計。

但是那速度,機械硬碟時代已經otz了,固態也要非常厲害的(擦除次數和併發IO)能扛得住,但是價錢就比條子貴了。

所以嘛,即便實現了,效果也是槓槓的~

10樓:國王大道拿井蓋

能!windows系統就有此功能,感覺win98以後的系統都支援了。在記憶體還比較貴的年代,系統可以占用硬碟空間作為記憶體使用,也就是虛擬記憶體,但因為當時包括現在的機械硬碟受速度影響,只能在記憶體耗盡的情況下作為後補頂上,不至於讓系統崩潰而用,僅提供維持使用,但執行速度會明顯低於記憶體速度。

11樓:小主公

不能第一,目前ddr4的記憶體讀寫速度是nvme固態的10倍,就算固態虛擬成記憶體,執行慢的也能急死你

第二,固態虛擬記憶體只是作為記憶體不足時,拿一部分固態做記憶體以緩解記憶體不足的壓力,注意,這只是虛擬,並不是本質增加記憶體的大小

第三,BIOS自檢過不去,當你記憶體槽為空的時候,無論你虛擬多大的記憶體,真是記憶體卻是不存在的,所以BIOS就會認為缺失部件

第四,記憶體作為電腦幾大硬體之一不是這麼容易就能取消的

12樓:林大路

這個要看臉的,就是看CPU,部分伺服器已經支援可達2T記憶體的定址,甚至更高

但是家用CPU一般也就支援64G,頂天128G記憶體

你是打算用16G的硬碟還是32G的硬碟呢?

但是記憶體的主要作用就是快速交換和臨時寄存資料,所以記憶體的讀寫速率非常高

你看看這資料,一般我們家用的記憶體和家用CPU的讀取速度一般是30G/s

好一些的固態硬碟也就3G/s

寫入速度和讀取差不多,但相對會慢一些。

當然,硬碟當然是可以替代記憶體的,以協助記憶體的高成本和容量不夠。

這就是大家容易忽視的虛擬記憶體機制啊

不過這個沒多大用,因為虛擬記憶體主要是寄存優先級別低的任務和記憶體緊張的時候才起作用。

當你記憶體用滿的時候,硬碟的虛擬記憶體就開始工作了,然後你就發現了,速度太太太慢了

虛擬記憶體別稱虛擬儲存器(Virtual Memory)。電腦中所執行的程式均需經由記憶體執行,若執行的程式占用記憶體很大或很多,則會導致記憶體消耗殆盡。為解決該問題,Windows中運用了虛擬記憶體技術,即勻出一部分硬碟空間來充當記憶體使用。

當記憶體耗盡時,電腦就會自動呼叫硬碟來充當記憶體,以緩解記憶體的緊張。若計算機執行程式或操作所需的隨機儲存器(RAM)不足時,則 Windows 會用虛擬儲存器進行補償。它將計算機的RAM和硬碟上的臨時空間組合。

當RAM執行速率緩慢時,它便將資料從RAM移動到稱為「分頁檔案」的空間中。將資料移入分頁檔案可釋放RAM,以便完成工作。 一般而言,計算機的RAM容量越大,程式執行得越快。

若計算機的速率由於RAM可用空間匱乏而減緩,則可嘗試通過增加虛擬記憶體來進行補償。但是,計算機從RAM讀取資料的速率要比從硬碟讀取資料的速率快,因而擴增RAM容量(可加記憶體條)是最佳選擇。

13樓:

在電子管計算機時期(1949~1957),計算機主要用於科學計算。主儲存器是決定計算機技術面貌的主要因素。當時,主儲存器有水銀延遲線儲存器、陰極射線示波管靜電儲存器、磁鼓和磁心儲存器等型別,通常按此對計算機進行分類。

到了電晶體計算機時期(1958~1964),主儲存器均採用磁心儲存器,磁鼓和磁碟開始用作主要的輔助儲存器。

怎麼看能不能給筆記本換cpu,加記憶體條

瞎逛JUN 焊接cpu是不能公升級的,確切的說不是不可以,是要用到bga焊臺,自己換不了。用台式電腦cpu,有插槽的cpu是可以公升級的。焊接在主機板上的記憶體不能公升級。有記憶體插槽的筆記本可以公升級。 對方正在輸 你這個筆記本比較老了,換處理器也不能帶來太大的效能提公升,治標不治本。個人不推薦自...

EXCEL能不能在不開啟檔案的情況下,拷貝裡面的內容?

Sub資料彙總 Dim thisPath AsString DimwbName AsString Dimwb AsObject DimwbSheet AsWorksheet 把需要合併的工作簿放在乙個資料夾下面 thisPath 檔案路徑 DimlastRow AsInteger lastCol A...

這種情況下能不能跳過獵頭直接入職?

1.立場決定觀點,其他獵頭從業者的回答並沒有錯,但不是非得參考的。2.這是公司與獵頭之間的博弈,求職者本身沒問題,獵頭費用上面產生分歧了。3.跳過獵頭入職,對求職者來說無直接損失,部分情況可能是公司承擔某些法律風險。4.獵頭之間會有同行交流,也會有拉黑行為。但更多的是針對做法惡劣的公司,而非某個求職...