ทำไมระบบปฏิบัติการถึงมีข้อ จำกัด ขนาดไฟล์


10

อะไร จำกัด ไฟล์ที่จะมีขนาดสูงสุดขึ้นอยู่กับระบบปฏิบัติการ?

จากหน้านี้ :

ข้อความแสดงแทน

ฉันไม่เข้าใจสิ่งนี้อย่างแน่นอน หากคุณมีพื้นที่เก็บข้อมูลจะมีข้อ จำกัด อะไรอีกบ้าง? คุณควรจะสามารถจัดเก็บข้อมูลได้มากเท่าที่คุณต้องการในแบบที่คุณต้องการ (แม้ในไฟล์เดียว) เว้นแต่ว่าคุณมีพื้นที่จัดเก็บข้อมูลไม่เพียงพอ

คำตอบ:


19

ระบบไฟล์จำเป็นต้องจัดเก็บขนาดไฟล์ (ทั้งในหน่วยไบต์หรือในบางหน่วยระบบขึ้นอยู่กับระบบไฟล์เช่นภาคหรือบล็อก) จำนวนบิตที่จัดสรรให้กับขนาดมักจะถูกแก้ไขในหินเมื่อระบบไฟล์ได้รับการออกแบบ

หากคุณอนุญาตให้มีขนาดบิตมากเกินไปคุณทำให้ทุกไฟล์ใช้พื้นที่เพิ่มขึ้นเล็กน้อยและการทำงานทุกครั้งจะช้าลงเล็กน้อย ในทางกลับกันถ้าคุณอนุญาตให้มีขนาดบิตน้อยเกินไปคนหนึ่งวันจะบ่นเพราะพวกเขากำลังพยายามจัดเก็บไฟล์ 20EB และระบบไฟล์อึของคุณจะไม่ยอมให้

ในช่วงเวลาที่ระบบไฟล์ที่คุณพูดถึงได้รับการออกแบบมีดิสก์ขนาดใหญ่พอที่จะทำงานในขอบเขตที่ฟังดูเหมือนนิยายวิทยาศาสตร์ (ยกเว้น FAT32 แต่ บริษัท ที่ส่งเสริมมันตั้งใจจะเป็นตัวชี้วัดระดับกลางก่อนที่ทุกคนจะใช้ NTFS ใหม่ที่เป็นประกายและพวกเขาไม่เคยคาดหวังความต้องการที่เพิ่มมากขึ้น)

อีกสิ่งหนึ่งคือจนกระทั่งสิ้นศตวรรษที่ผ่านมาฮาร์ดแวร์สำหรับผู้บริโภคส่วนใหญ่ (และเซิร์ฟเวอร์) สามารถรองรับการคำนวณอย่างรวดเร็วด้วยค่า 32 บิตและระบบปฏิบัติการมักใช้ค่า 32- บิตสำหรับสิ่งต่างๆรวมถึงขนาดไฟล์ 32 บิตหมายถึง 4GB ดังนั้นระบบปฏิบัติการจึง จำกัด ไฟล์ 4GB โดยไม่คำนึงถึงระบบไฟล์มักจะเป็น 2GB เพราะใช้จำนวนเต็มที่ลงนามแล้ว ทุกวันนี้เดสก์ท็อปหรือเซิร์ฟเวอร์ที่จริงจังใช้ 64 บิตสำหรับขนาดไฟล์และออฟเซ็ตซึ่งทำให้ขีด จำกัด อยู่ที่ 8EB


2
+1 การชี้แจงต่อผู้ที่ไม่ได้ฝึกหัด - EB เช่นเดียวกับ exabytes เช่นเดียวกับล้านเทราไบต์
Shinrai

8

โครงสร้างข้อมูลบนดิสก์มักเป็นขีด จำกัด ศึกษาว่าระบบปฏิบัติการเหล่านี้จัดรูปแบบดิสก์อย่างไรและวิธีการติดตามส่วนต่าง ๆ ของไฟล์บนดิสก์และคุณจะเข้าใจว่าทำไมพวกเขาถึงมีข้อ จำกัด เหล่านี้ ระบบไฟล์ FAT เป็นเอกสารที่ค่อนข้างออนไลน์ (ดูWikipediaเป็นต้น) และคุณจะเห็นว่าการเลือกขนาดจำนวนเต็มสำหรับฟิลด์โครงสร้างดิสก์บางฟิลด์สิ้นสุดลงโดย จำกัด ขนาดโดยรวมของไฟล์ที่คุณสามารถจัดเก็บด้วยรูปแบบดิสก์นี้


1

ข้อ จำกัด นั้นเกิดจากข้อเท็จจริงที่ว่าเมื่อข้อกำหนดของระบบการจัดเก็บข้อมูลถูกเขียนขึ้นก็ไม่เคยคิดว่าฮาร์ดไดรฟ์จะมีขนาดใหญ่กว่านั้นมาก .... หรือข้อ จำกัด ทางเทคนิคอื่น ๆ ในขณะที่ออกแบบข้อกำหนด

ฉันคิดว่าทุกวันนี้ข้อ จำกัด ในระบบการจัดเก็บข้อมูลแบบใหม่มักจะนำไปใช้ในสิ่งที่คาดหวัง

... มันจะยากสำหรับทีมงานด้านเทคนิคที่จะปล่อยระบบการจัดเก็บและบอกว่ามันรองรับฮาร์ดไดรฟ์ 500 Petabyte โดยไม่ต้องทำการทดสอบ

แล็ปท็อปเครื่องแรกของฉันคือ 286 ที่มีฮาร์ดไดรฟ์ 40MB ... ฉันไม่เคยคิดเลยว่าจะต้องการ FAT (หรือขีด จำกัด ) ในเวลานี้!

ฉันคิดว่าข้อ จำกัด ของ NTFS ในปัจจุบันคือประมาณ 16TB ต่อโวลต์ 2TB ต่อไฟล์ ... ค่อนข้างตรงไปตรงมานั่นคือ (และควรจะ) ดีสำหรับบางครั้ง - อะไรก็ตามที่มีความสามารถ (หรือต้องการ) ของการเขียนไฟล์ที่มีขนาดใหญ่กว่า 2TB มักจะมีความสามารถ แบ่งไฟล์และ / หรือคุณลักษณะการดูแลระบบที่คล้ายกัน (เช่นเซิร์ฟเวอร์ SQL)


1

คำตอบง่ายๆ: คุณต้องสามารถอ่านไฟล์ได้ดังนั้นคุณต้องสามารถระบุที่อยู่ไฟล์ได้ การเข้าถึงนี้จะผ่านโครงสร้างข้อมูลที่มีขีด จำกัด คุณจะติดอยู่กับตัวส่วนร่วมที่ต่ำที่สุดของ; ข้อ จำกัด ทางกายภาพ (ดิสก์การ์ด SD ฯลฯ ) ขีด จำกัด ของระบบไฟล์และข้อ จำกัด ของระบบปฏิบัติการ


คุณสามารถระบุไฟล์ได้หลายเฟสเช่นเซกเมนต์, หน่วยความจำ, อัน, ออฟเซตไบต์ ฯลฯ
yyny

0

การรู้ขนาดของไฟล์ทุกไฟล์เป็นเพียงการทำให้เข้าใจง่ายที่เราคุ้นเคย มันไม่จำเป็นต้องเป็นอย่างนั้นและก็ไม่เป็นเช่นนั้นเสมอไป

เมนเฟรมเก่าไม่เคยใหม่ขนาดไฟล์ใหญ่เท่าไหร่จนกระทั่งอ่านจนจบ (และถึงแม้จะไม่ได้ติดตามขนาด) แม้แต่ไฟล์ดิสก์ก็มักจะถูกเข้าถึงตามลำดับและจะเพิ่มขึ้นเมื่อขยาย ขนาดของพวกเขา (เป็นไบต์) ไม่ถูกบันทึกและไม่สามารถคำนวณได้โดยทั่วไปโดยไม่ต้องอ่านทั้งหมดเนื่องจากขนาดเซกเตอร์ผันแปรและคุณลักษณะคี่อื่น ๆ

ไม่ยากที่จะออกแบบระบบไฟล์ที่ไม่ได้ติดตามขนาดไฟล์และทำให้พวกมันเติบโตได้ไม่ จำกัด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.