PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 電腦硬體討論群組 > 儲存媒體討論區
帳戶
密碼
 

  回應
 
主題工具
TIDUS30536
Junior Member
 

加入日期: Jul 2005
文章: 918
關於所謂的4K對齊

我的理解是:
1.OS的基本單位:4096bytes/cluster,也等同記憶體的一個page size

2.因為早期IBM的軟碟機基本單位是512bytes/sector,所以後來儲存媒體都這樣制定sector size

3.OS寫入一個單位為cluster,會被硬碟拆成8個sector邏輯定指寫入硬碟

Q:但是問題是,OS一個單位的資料還是4096bytes,硬碟是直接把資料/8*512bytes切割嗎?那他在LBA的時候是用什麼方式得知"那筆"資料的存放位置以及順序?總不可能向記憶體一樣給個大小和起始位置判別吧,真那樣也不會有碎片產生了

4.早期的分割表會讓硬碟起始位置在31.5k的位置開始記錄,所以不會對齊,從vista開始分割表就會對齊4K,網路上說是分割表導致儲存的起始位置不能與自己的基本寫入單位對齊,導致OS寫入一個單位,可能不是在同一個4K sector裡面,而造成讀取的時候,要多讀取一次

Q:假設真如他所說的這樣,那4K先進格式化技術,就算我儲存20bytes的檔案,實際上寫入的大小也是4K摟?因為只有這樣子的I/O機制才會造成不對齊4K sector的時候需要多讀取一次,不然如果傳統的LBA定址512bytes,每次就是512bytes,1個OS的寫入/讀取就是8個傳統sector的操作,也不會有對齊不對齊的問題了,是這個意思嗎?

5.但是網路上又說先進格式化也允許早期的OS模擬邏輯定址512bytes,定址LBA這個部分,是OS在進行的嗎?OS應該不用取得硬碟的實際磁區狀況,他只認得cluster為單位,為什麼先進格式化又說需要模擬512bytes定指呢?直接4k/cluster對上4k/sector不就好了嗎?

6.對於sector size,如果訂為4096bytes,那實際寫入1024bytes,是否實際使用了4096bytes的空間?

Q:但是這樣又跟我們接觸的檔案儲存的結構(NTFS)概念不同,我用1KB,硬碟應該是少1KB才對啊....越想越奇怪


誰來幫幫無知的我
     
      

此文章於 2012-03-21 09:29 AM 被 TIDUS30536 編輯.
舊 2012-03-21, 09:24 AM #1
回應時引用此文章
TIDUS30536離線中  
david_lin
Senior Member
 
david_lin的大頭照
 

加入日期: Aug 2000
您的住址: 地球
文章: 1,370
OS沒差,是看你格式化時選的大小
LBA 只是用來對應
至於劃成512是會省空間沒錯,
至於4K存512的話是佔用4K,反正就是存比4K小都是佔4k
 

此文章於 2012-03-22 01:23 AM 被 david_lin 編輯.
舊 2012-03-22, 01:21 AM #2
回應時引用此文章
david_lin離線中  
pilotjay
Power Member
 
pilotjay的大頭照
 

加入日期: Nov 2002
您的住址: 高雄
文章: 626
先釐清
4K對齊不完全等於先進格式化
其他才有辦法更深入了解
__________________

財.色.藝.無德可矣?

此文章於 2012-03-22 01:35 AM 被 pilotjay 編輯.
舊 2012-03-22, 01:27 AM #3
回應時引用此文章
pilotjay離線中  
TIDUS30536
Junior Member
 

加入日期: Jul 2005
文章: 918
引用:
作者pilotjay
先釐清
4K對齊不完全等於先進格式化
其他才有辦法更深入了解


先進格式化是內部硬碟的機制了,我比較在意的是為什麼官方要說XP要被模擬成512bytes?直接對應OS的cluster(預設4K)不就好了?
以及早期沒有這個疑慮,是不是LBA都把資料拆成一個個512bytes儲存?
還有檔案結構系統寫入少於4K為什麼不是直接減少4K?

PS.先進格式化照我認知應該是減少每個sector之間的間格總量,還有ECC的資料4K只需要140bytes,比傳統的512*8需要40*8要少,且如果每次都直接對應不需要拆成512bytes,I/O應該比較有效率了(?)
舊 2012-03-22, 02:28 AM #4
回應時引用此文章
TIDUS30536離線中  
bureia
Golden Member
 

加入日期: Dec 2001
文章: 2,906
以前硬碟512bytes per sector
先進格式化4096bytes per sector

跟windows中分割區配置單位大小4096bytes沒有關係

此文章於 2012-03-22 12:14 PM 被 bureia 編輯.
舊 2012-03-22, 12:09 PM #5
回應時引用此文章
bureia離線中  
bureia
Golden Member
 

加入日期: Dec 2001
文章: 2,906
摘自http://5i01.com/topicdetail.php?f=297&t=1448368&p=1

說明:
Advanced Format只是WD稱呼實體磁區(Sector)配置為4096Byte(4kByte)的硬碟,一般傳統硬碟的實體磁區配置為512Byte。

問題點:
所有Win5.x的作業系統(Windows 2k, xp, 2k3, WHS)都對實體4k的磁區配置(Physical 4k Sector)沒有任何概念,因為Win2k發行時這個議題的討論還不是非常成熟,加上所有Win5.x的作業系統在分割第一個Partition的時候都習慣從LBA63開始,導致在Advance Format的硬碟上分割磁區時產生偏差。

簡單的說,假設有一排長方形的櫃子(每個櫃子=4kB),每個櫃子裡有八個格子(每個格子=512B),Win5.x的系統就會告訴你從第八個櫃子裡的第七個格子開始放資料(造成Partition偏移)。

結果就是,分割完開始放資料後,總是會有一些是放到隔壁的櫃子去的(因為Partition偏移),進而造成下次要更新資料的時候,不能直接整理該比資料對應的櫃子就好,還得把隔壁的櫃子一併整理(因為有些資料放到隔壁去了)。造成效能的低落

然而以上的問題在Win6.x(Windows Vista, 2008, 7)、MacOSX、Linux上的作業系統並不會發生,因為上述的系統都已經把Physical 4k Sector的狀況考慮進去。
舊 2012-03-22, 12:35 PM #6
回應時引用此文章
bureia離線中  
rockjimmy
*停權中*
 

加入日期: Feb 2004
文章: 2,909
引用:
作者bureia
以前硬碟512bytes per sector
先進格式化4096bytes per sector

跟windows中分割區配置單位大小4096bytes沒有關係


所以SSD要格式化時
"windows中分割區配置單位大小"都選預設值就OK了嗎@@?
舊 2012-03-23, 09:53 PM #7
回應時引用此文章
rockjimmy離線中  
浮出水面
*停權中*
 

加入日期: Jan 2008
文章: 508
引用:
作者rockjimmy
所以SSD要格式化時
"windows中分割區配置單位大小"都選預設值就OK了嗎@@?

友站曾有人做過試驗,他的結論還是4K最理想
舊 2012-03-24, 09:15 AM #8
回應時引用此文章
浮出水面離線中  
浮出水面
*停權中*
 

加入日期: Jan 2008
文章: 508
引用:
作者TIDUS30536
先進格式化是內部硬碟的機制了,我比較在意的是為什麼官方要說XP要被模擬成512bytes?直接對應OS的cluster(預設4K)不就好了?
以及早期沒有這個疑慮,是不是LBA都把資料拆成一個個512bytes儲存?
還有檔案結構系統寫入少於4K為什麼不是直接減少4K?

PS.先進格式化照我認知應該是減少每個sector之間的間格總量,還有ECC的資料4K只需要140bytes,比傳統的512*8需要40*8要少,且如果每次都直接對應不需要拆成512bytes,I/O應該比較有效率了(?)

因為你說的4K是屬於最上層的檔案系統的邏輯層次,但XP(包括Win7在內)最底層的API只認識512或512e AF,根本不知道底層的4K或4Kn AF是什麼東西啊

再爆個料,先進格式化一點都不先進,微軟官方一語戳破硬碟商的美麗包裝,讓我看的驚奇連連啊
舊 2012-03-24, 09:32 AM #9
回應時引用此文章
浮出水面離線中  
TIDUS30536
Junior Member
 

加入日期: Jul 2005
文章: 918
引用:
作者浮出水面
因為你說的4K是屬於最上層的檔案系統的邏輯層次,但XP(包括Win7在內)最底層的API只認識512或512e AF,根本不知道底層的4K或4Kn AF是什麼東西啊

再爆個料,先進格式化一點都不先進,微軟官方一語戳破硬碟商的美麗包裝,讓我看的驚奇連連啊


可以跟我說在哪裡看到嗎?
爆料的文章?
謝謝
舊 2012-03-24, 10:35 AM #10
回應時引用此文章
TIDUS30536離線中  


    回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是11:50 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。