ระบบแฟ้ม (File system)
สารบัญ :: #1 :: #2 :: #3 :: #4 :: #5 :: #6 :: #7 :: #8 :: #9 :: #10 :: #11 :: #12 :: Linux ::
ระบบแฟ้ม

สาระการเรียนรู้
1. โครงสร้างระบบแฟ้ม
2. โครงสร้างไดเรกทอรี่
3. วิธีการเข้าถึง
4. การอนุญาตให้เข้าถึงแฟ้ม

จุดประสงค์การสอน
1. เข้าใจโครงสร้างระบบแฟ้ม
2. สามารถจัดการกับโครงสร้างไดเรกทอรี่ได้
3. เข้าใจวิธีการเข้าถึง
4. สามารถเขียนภาพแสดงการเข้าถึงได้
5. เข้าใจการอนุญาตให้เข้าถึงแฟ้ม
6. สามารถบอกลักษณะการอนุญาตเข้าถึงแฟ้มได้

แนะนำบทเรียน
การจัดเก็บแฟ้มของ Windows ในระบบ FAT (File Allocation Table) จะใช้ตาราง FAT และ ตาราง Directory โดยแบ่งพื้นที่ของฮาร์ดดิสก์ออกเป็น cylender และ cluster และ track และ sector และ block แต่ละแฟ้มจะต้องใช้พื้นที่ที่อยู่ในแต่ละ block หากขนาดแฟ้มเล็กกว่า 1 block ก็จะใช้กินพื้นที่ 1 block เพื่อให้หัวอ่านทำงานได้เร็ว โดยอ่านข้อมูลครั้งละ 1 block ทำให้หัวอ่านเคลื่อนตัวไปเท่าจำนวน block แทนจำนวน byte การจัดเก็บในแต่ละสื่อก็จะมีมาตรฐานและขนาดของ block แตกต่างกันไป อย่างเช่น CD ก็จะเก็บข้อมูลแบบก้นหอย ไม่ได้แบ่งเป็นวงเล็กใหญ่ลดหลั่นกันไปเหมือนใน harddisk

บทนำ

แฟ้ม หรือไฟล์ (File)
หมายถึง กลุ่มของสารสนเทศที่สัมพันธ์กัน ซึ่งความสัมพันธ์เหล่านั้นกำหนดโดยผู้สร้างแฟ้ม และอาจใช้เก็บอะไรก็ได้
หมายถึง กลุ่มของระเบียนที่สัมพันธ์กัน เป็นเรื่องเดียวกัน
หมายถึง สิ่งที่บรรจุข้อมูลต่าง ๆ ไว้ในที่เดียวกัน
หมายถึง A named collection of related information that is recorded on secondary storage.
หมายถึง A collection of bytes stored as an individual entity. All data on disk is stored as a file with an assigned file name that is unique within the folder (directory) it resides in. To the computer, a file is nothing more than a string of bytes. The structure of a file is known to the software that manipulates it. For example, database files are made up of a series of records. Word processing files contain a continuous flow of text. [techweb.com]

ระบบแฟ้ม (File system)
หมายถึง กลุ่มของสารสนเทศที่เชื่อมโยงสัมพันธ์กัน ถูกใช้เพื่อควบคุมการเรียกใช้ และจัดเก็บข้อมูลภายในระบบ
ระบบแฟ้มเป็นสิ่งที่ผู้ใช้เกี่ยวข้องโดยตรง แต่มักไม่รู้ตัวเนื่องจากเป็นการอำนวยความสะดวกโดยระบบปฏิบัติการอย่างอัตโนมัติ ระบบแฟ้มเป็นฐานที่ทำให้เกิดการจัดการโปรแกรม และข้อมูลในทุกการดำเนินงานของระบบซอฟท์แวร์ที่เข้าควบคุมสื่อเก็บข้อมูล

ระบบแฟ้มประกอบด้วย 3 ส่วน คือ 1) รวมรวมแฟ้ม (Collection of Files) เก็บข้อมูลที่สัมพันธ์ให้ถูกอ้างอิงได้ในรูปแฟ้มข้อมูล 2) โครงสร้างแฟ้ม (Directory Structure) จัดการอำนวยการเข้าถึงแฟ้มและจัดกลุ่มอย่างเป็นระบบ 3) พาทิชัน (Partitions) ซึ่งแยกเป็นทางกายภาพ (Physically) หรือทางตรรก (Logically) ของระบบไดเรกทรอรี่ (Directory) โดยเนื้อหาในบทนี้จะกล่าวถึงแฟ้ม และโครงสร้างไดเรกทรอรี่ รวมถึงการป้องกันแฟ้ม จากการเข้าถึงในระบบ Multiple users และระบบ File sharing
วิธีการจัดเก็บข้อมูลที่ใช้กันใน OS ทุกตัวคือ จัดเก็บข้อมูลเป็นแฟ้มข้อมูลหรือไฟล์ (file) ไฟล์คือสิ่งที่บรรจุข้อมูล,โปรแกรมหรืออะไรก็ได้ที่ผู้ใช้ต้องการรวบรวมไว้เป็นชุดเดียวกัน การอ้างถึงไฟล์หรือข้อมูลต่าง ๆ ภายในไฟล์ของโปรแกรม จะไม่มีความเกี่ยวข้องกับแอดเดรสของโปรแกรมใด ๆ ทั้งสิ้น OS มีโอเปอร์เรชั่นพิเศษที่เรียกว่า system call ไว้ให้โปรแกรมเรียกใช้ เพื่อให้สามารถจัดการงานที่เกี่ยวกับไฟล์ได้

วิธีการจัดเก็บไฟล์ที่ใช้กันอยู่ทั่วไปมี 3 วิธี
1. เก็บเป็นไบต์เรียงกันไป UNIX เก็บไฟล์ในลักษณะนี้
2. เก็บเป็นเรคคอร์ด เรคคอร์ดจะมีขนาดคงที่สามารถจะอ่านหรือเขียนที่เรคคอร์ดไหนก็ได้ แต่ไม่สามารถเพิ่มหรือลบเรคคอร์ดกลาง ๆ ได้ วิธีนี้ใช้ใน CP/M
3. เก็บแบบต้นไม้หรือทรีของบล็อก (ในดิสก์) แต่ละบล็อกจะสามารถมี ก เรคคอร์ด แต่ละเรคคอร์ดจะมีคีย์ (key) เอาไว้ช่วยในการค้นหาเรคคอร์ด เรคคอร์ดสามารถเพิ่มหรือลบออกที่ใดก็ได้ ถ้ามีเรคคอร์ดถูกเพิ่มเข้าไปในบล็อกที่เต็มแล้ว บล็อกนั้นก็จะแยกออกเป็น 2 บล็อกใหม่ในทรีและจัดเรียงตามลำดับอักษร วิธีนี้ใช้บนเครื่องระดับเมนเฟรมหลายเครื่อง และเรียกว่า ISAM (indexed sequential access method)

ระบบแฟ้ม (File System)

ระบบแฟ้ม (File system) หมายถึง กลุ่มของสารสนเทศที่เชื่อมโยงสัมพันธ์กัน ถูกใช้เพื่อควบคุมการเรียกใช้ และจัดเก็บข้อมูลภายในระบบ

File system or filesystem is used to control how data is stored and retrieved. Without a file system, information placed in a storage medium would be one large body of data with no way to tell where one piece of information stops and the next begins. wiki1 , wiki2

ในระบบปฏิบัติการ Windows สามารถดู File System ว่าใช้ของอะไร ด้วยการกด Right Click บน Drive แล้วเลือก Properties ก็จะแสดงข้อมูล เช่น Drive C ใช้ NTFS เป็นต้น หรือใช้ DOS>chkdsk ก็ได้เช่นกัน
  • AFS (Andrew File System) : a distributed file system, often used in WAN. It was developed by Carnegie Mellon University as part of the Andrew Project. #
  • AUTOFS : for automatically mounting file systems/data media to the system, therefore not a real file system #
  • DEVPTS : for pseudo-terminals (complies with UNIX'98 specification) (TTY = เครื่องโทรพิมพ์ / teletype / teletypewriter / touch teletype และ PTY (pseudo terminal device) is a terminal device which is emulated by an other program (example: xterm, screen, or ssh are such programs). A pts is the slave part of a pty.) #
  • ext2 : second extended filesystem is a file system for the Linux kernel. It was initially designed by Rémy Card as a replacement for the extended file system (ext). #
  • ext3 : third extended filesystem, is a journaled file system that is commonly used by the Linux kernel. #
  • HPFS (High Performance File System) : is a file system created specifically for the OS/2 operating system to improve upon the limitations of the FAT file system. #
  • ISO 9960 : is a file system standard published by the International Organization for Standardization (ISO) for optical disc media. #
  • JFS : journaling file system originally developed by IBM for AIX (IBM UNIX); since February 2000 an Open-Source-licensed beta version is available as a patch for Linux #
  • MINIX (Mini Unix) : file system from Minix, often used for Linux floppy disks #
  • MSDOS : file system for MS-DOS partitions and floppy disks (short file names) #
  • NFS (Network File System) : is a distributed file system protocol originally developed by Sun Microsystems in 1984, allowing a user on a client computer to access files over a computer network much like local storage is accessed. #
  • NTFS (New Technology File System) : is a proprietary file system developed by Microsoft. Starting with Windows NT 3.1. it is the default file system of Windows NT family. #
  • NWFS : is a file system based on a heavily modified version of FAT. It was used in the Novell NetWare operating system. #
  • PROC / PROCFS : process management under /proc #
  • ReiserFS : Reiser file system, named after its creator Hans Reiser. Introduced in version 2.4.1 of the Linux kernel. #
  • SMBFS : Samba (network file system under Windows) #
  • SWAP : swap partitions or files #
  • UDF : universal disk format (CD-RWs and DVDs) #
  • USBDEVFS : for connecting and managing USB devices #
  • VFAT : DOS/Windows 9x file system (long file names) #
  • XFS : journaling file system in UNIX; originally developed by SGI for IRIX, its custom-made UNIX; meanwhile a GPL beta version has become available as a patch for Linux #
8.1 โครงสร้างระบบแฟ้ม (File-system structure) ระบบแฟ้มแบ่งได้เป็น 6 ชั้น (Layer)
1. Application programs โปรแกรมที่นำไปใช้ เช่น เกม หรือ word เป็นต้น
2. Logical file system มีหน้าที่เชื่อม OS กับผู้ใช้ เพราะผู้ใช้เห็นแฟ้มเดียว แต่อาจเก็บข้อมูลจริงไว้แยกกัน ซึ่งเป็นหน้าที่ของ OS
3. File-organization module ทำหน้าที่ เชื่อมระหว่าง Logical block และ Physical block ให้เป็นเรื่องเดียวกัน
4. Basic file system ทำหน้าที่เข้าไปอ่าน และเขียนในส่วนของ Physical block
5. I/O control ประกอบด้วย Device driver ควบคุมอุปกรณ์ให้ใช้งานได้
6. Devices อุปกรณ์ที่เก็บข้อมูลหรือแฟ้ม ถูกควบคุมโดย Device driver
8.2 โครงสร้างไดเรกทอรี่(Directory structure)
Directory หรือ Folder หมายถึง สารบัญ ทำหน้าที่เก็บรายชื่อแฟ้มไว้ในที่เดียวกัน เพื่อให้ผู้ใช้เรียกใช้ได้ และ Directory ก็ถือเป็นแฟ้มประเภทหนึ่งที่ประกอบด้วยหน่วยย่อยต่าง ๆ เมื่อแบ่งฮาร์ดดิสก์ออกเป็นหลาย partition แต่ละ partition ก็จะมีระบบ directory ของตนเอง

ปฏิบัติการเกี่ยวกับ Directory
1. Search for a file
2. Create a file
3. Delete a file
4. List a directory แสดงรายชื่อแฟ้มใน 1 directory
5. Rename a file
6. Traverse the file system แสดง หรือเก็บรายชื่อแฟ้มในทุก directory ได้
โครงสร้างไดเรกทรอรี่เชิงตรรก (Logical structure of the directory)
1. Single-level directory
2. Two-level directory
3. Tree-structured directory
4. Acylic-graph directory
5. General graph directory


8.3 วิธีการเข้าถึง (Access methods) แฟ้มถูกใช้เก็บข้อมูลสารสนเทศ เมื่อถูกใช้ย่อมมีการเข้าถึง เพื่ออ่านข้อมูลหลายวิธี
8.3.1 วิธีการเข้าถึง (Access Method)
1. Sequential access method
การอ่านข้อมูลต้องเป็นไปตามลำดับ ไม่สามารถข้ามไปยังจุดที่ต้องการได้
2. Direct access method or Relative access method
จากการที่แฟ้มมีการแบ่งเป็นกล่อง (Block) จึงทำให้สามารถวิ่งเข้าไปอ่านใน block ที่ต้องการได้โดยตรง
3. Other access method
เช่น index and relative files จะมีตัวบ่งชี้ในการเข้าถึงระเบียนที่ต้องการ
8.3.2 การเข้าถึงดิสก์ (Disk Scheduling)
1. การจัดเวลาแบบมาก่อนได้ก่อน (FCFS scheduling)
เมื่ออยู่ใน queue ก็จะทำเรียงตามลำดับใน queue ไม่มีการพิจารณาอื่น
2. การจัดเวลาแบบเวลาสั้นสุดได้ก่อน (SSTF scheduling)
นำ process ใน queue มาพิจารณา และเลือกจุดที่เข้าถึงได้เร็ว จากจุดล่าสุด
3. การจัดเวลาแบบ SCAN (SCAN scheduling)
อ่านจากด้านหนึ่งไปอีกด้านหนึ่งเป็นทิศทางเดียว เมื่อกลับมาอีกด้านก็ยังทำงานเช่นกัน
4. การจัดเวลาแบบ C-SCAN (Circular-SCAN scheduling)
อ่านจากด้านหนึ่ง แต่เป็นแบบทิศทางเดียวแท้จริง คือการย้อนกลับมาจะไม่บริการ
5. การจัดเวลาแบบ (Look scheduling)
คล้ายกับ scan แต่ scan หรือ c-scan จะไม่มีการนำไปใช้จริง เพราะหัวอ่าน จะพิจารณาไปยังจุดที่ต้องอ่านจริงของอีกด้านหนึ่ง ไม่ได้ มิได้ไปยังขอบของจานบันทึก
ตัวอย่าง Disk Scheduling :
Reference ! http://www.scism.sbu.ac.uk/ccsv/josephmb/CS-L2-OS/osn/week2.html
Current position: track 100
Requested tracks, in order received: 55, 58, 39, 18, 90, 160, 150, 38, 184
FIFO: move 45 tracks to track 55; move 3 tracks to track 58; etc.
SSTF: move 10 tracks to track 90; move 32 tracks to track 58; etc.
SCAN, C-SCAN (moving in direction of increasing track number): move 50 tracks to track 150; move 10 tracks to track 160; etc.
ParameterFD 360KBHD รุ่นหนึ่ง
จำนวน cylinder4010601
จำนวน track / cylinder212
จำนวน sector / track9281(ค่าเฉลี่ย)
จำนวน sector / disk72035742000
จำนวน byte / sector512512
ความจุดิสก์360 KB18.3 GB
เวลาค้นหา (ใน cylinder ที่ติดกัน)6 msec0.8 msec
เวลาค้นหา (โดยเฉลี่ย)77 msec6.9 msec
เวลาในการหมุน200 msec8.33 msec
เวลาที่มอเตอร์หมุน และหยุด250 msec20 sec
เวลาที่ใช้ในการถ่ายโอน 1 sector22 msec17 นาโนเซคัน
8.4 การอนุญาตให้เข้าถึงแฟ้ม (File sharing) 1. None
2. Knowledge
3. Execution
4. Reading
5. Appending
6. Updating
7. Changing protection
8. Deletion
8.5 การจัดเรียงหลายไฟล์มัลติมีเดียลงบนดิสก์หลายตัว (Placing Files on Multiple Disks)
(ไพศาล โมลิสกุลมงคล p.279 )
1. ไม่มีการแบ่งภาพยนตร์ อยู่ต่อกันในดิสก์เดียวกัน (No striping)
2. แบ่งภาพยนต์ไปหลายดิสก์ และใช้แพทเทิร์นเดียวกันสำหรับแต่ละไฟล์ (Same striping pattern for all files)
3. แบ่งภาพยนตร์วางแต่ละดิสก์ในลักษณะเหลื่อม เริ่มต้นแฟ้มต่างดิสก์ (Staggered striping)
4. ใช้การสุ่ม (Random striping)
8.6 RAID (Redundant Array of Independent Disks)

RAID (Redundant Array of Independent Disks) คือ เทคโนโลยีอย่างหนึ่ง ที่มีมานานแล้ว สำหรับการสร้าง ลอจิกคอลไดร์ฟ ( Logical Drive) หรือเรียกกันทั่วๆไปว่า Array ขึ้นมาจากกลุ่มของ ฮาร์ดดิสต์ (PHYSICAL DRIVE) หลาย ๆ ตัวที่มาเชื่อมต่อด้วยกัน ซึ่งทำให้ระบบมองเห็น อะเรย์ หรือ ลอจิกคอลไดร์ฟดังกล่าวเสมือนเป็นฮาร์ดดิสต์ตัวเดียว แต่มีขนาดและความจ ุ เพิ่มขึ้นโดยซอฟแวร์ควบคุม RAID และการ์ดควบคุม RAID จะคอยบริการจัดเรียงข้อมูลให้อยู่ในรูปแบบของมาตรฐาน RAID แก่ ฮาร์ดดิสต์ทุก ๆ ตัวที่ต่ออยู่กับอะเรย์นั้นๆ
http://www.thaiall.com/os/raid.htm
(ไพศาล โมลิสกุลมงคล p.249 )

Stripping คือ การแบ่งดิสก์ออกเป็นส่วน ๆ ทำให้การทำงานใน RAID มีความเร็วในการโอนย้ายข้อมูลสูง แต่มีความเชื่อถือในการทำงานต่ำ มีการเพิ่มแนวคิดของ Parity เพื่อทำให้ข้อมูลน่าเชื่อถือเพิ่มขึ้น

Mirroring หรือ Shadowing คือ การทำสำเนาดิสก์แต่ละตัว มีค่าใช้จ่ายสูง เพราะต้องสำเนาลงดิสก์หลายตัว

8.7 ปฏิบัติการจัดการแฟ้ม
- ฝึกจัดการแฟ้มในระบบปฏิบัติการ DOS
- ฝึกจัดการแฟ้มในระบบปฏิบัติการ Windows และการกำหนดสิทธิ์
- ฝึกจัดการแฟ้มในระบบปฏิบัติการ Linux และการกำหนดสิทธิ์
- ค้นคว้าข้อมูลเกี่ยวกับ ระบบแฟ้ม จากอินเทอร์เน็ต แล้วทำรายงาน และส่งตัวแทนนำเสนอหน้าชั้น
ข้อจำกัด ขนาดแฟ้ม ในแต่ละ ระบบปฏิบัติการ
http://dev.mysql.com/doc/refman/5.0/en/full-table.html
Operating SystemFile-size Limit
Win32 w/ FAT/FAT322GB/4GB
Win32 w/ NTFS2TB (possibly larger)
Linux 2.2-Intel 32-bit2GB (LFS: 4GB)
Linux 2.4+ (using ext3 filesystem)4TB
Solaris 9/1016TB
MacOS X w/ HFS+2TB
NetWare w/NSS filesystem8TB
ถาม - ตอบ ส่วนหนึ่งเรียบเรียงจากหนังสือของ รศ.ดร.กฤษดา ขันกสิกรรม
ถามลำดับชั้นของข้อมูล มีกี่แบบ อะไรบ้าง
ตอบแบ่งได้ 8 แบบ
1. บิต (Bit)
2. ไบท์ (Byte)
3. เวิร์ด (Word) ต่างกันไปตามระบบปฏิบัติการ ถ้าเป็นระบบ 32 bit แล้ว 1 word จะใช้ 4 bytes ถ้าเป็นระบบ 64 bit แล้ว 1 word จะใช้ 8 bytes
4. ตัวอักษร (Character) ถ้ามาตรฐาน ASCII จะใช้ 1 byte ส่วนมาตรฐาน EBCIDC จะใช้ 1 byte ส่วนมาตรฐาน Unicode อาจใช้ 1 byte 2 bytes หรือ 4 bytes เพื่อใช้แทน character set
5. ฟิลด์ (Field)
6. เรคคอร์ด (Record)
7. ไฟล์ (File)
8. ระบบไฟล์ (File System)
ถามหน้าที่หลักของระบบไฟล์ คืออะไร
ตอบ1. จัดหาวิธีจัดเก็บไฟล์ อ้างอิงงานในไฟล์ แบ่งใช้ไฟล์ร่วมกัน รักษาความปลอดภัยกับไฟล์
2. จัดสรรพื้นที่ให้กับไฟล์ในหน่วยเก็บข้อมูลสำรอง
3. รับประกันว่าข้อมูลที่จัดเก็บจะไม่เสียหาย
4. ระบุว่าจะเข้าใช้งานข้อมูลที่ถูกเก็บในไฟล์ได้อย่างไร
ถามDirectories ในระบบไฟล์คืออะไร
ตอบเป็นการจัดการไฟล์ให้จัดเก็บ ค้นหา และเข้าถึงได้อย่างมีประสิทธิภาพ แล้วพัฒนาให้มีการจัดเก็บแบบหลายชั้น (Hierarchical directory) แบ่งเป็น Parent directory และ Child directory
ถามPath name ในระบบไฟล์คืออะไร
ตอบนอกจาก Filename แล้ว การอ้างตำแหน่งไฟล์ก็ต้องมี Path name ก่อนถึงชื่อไฟล์ ประกอบด้วย Root Directory, Parent Directory, Child Directory ถ้ามีหลายชั้นก็จำมี Child Directory ที่ทำหน้าที่เป็น Parent Directory ลงไปอีก
ถามRelative pathname ในระบบไฟล์คืออะไร
ตอบRelative pathname คือ ชื่อพาธสั้น ๆ ที่อ้างอิงได้ผ่าน Working directory หรือ Current directory ซึ่งระบบปฏิบัติการรุ่นใหม่จะอ้างถึง Relative pathname ได้ เช่น Working directory คือ /CD/Disk1/work1 หากจะเข้า Relative Directory ก็พิมพ์ DOS>cd project1 ไม่ต้องพิมพ์ชื่อ Directory ยาว ก็จะเข้าไปทำงานใน /CD/Disk1/work1/project1 ได้ กรณีนี้ก็จะมี Relative pathname ว่า project1
ถามAbsolute pathname ในระบบไฟล์คืออะไร
ตอบAbsolute pathname คือ Full pathname ของ Working directory เช่น /CD/Disk1/work1 แต่เมื่อสั่ง DOS>cd project1 ก็จะมี Absolute pathname ของ Working directory ใหม่ เป็น /CD/Disk1/work1/project1
ถามลิงค์ (Link) ในระบบไฟล์คืออะไร มีกี่แบบ
ตอบแบ่งได้ 2 แบบ
ลิงค์ คือ การเชื่อมโยงแฟ้มไปไว้ใน directory ต่าง ๆ ที่ต่างจากการคัดลอก
ซอฟต์ลิงค์ (Soft link) คือ การเชื่อมการอ้างอิงโดยเก็บชื่อพาธ เป็น Indirect Reference ในวินโดว์เรียกว่า short cut ใน MAC OS เรียกว่า Alias เป็นการเพิ่มการสร้าง Reference ไปยังแฟ้มปลายทาง ในทางเทคนิค ซอฟต์ลิงค์จะเก็บ path ของแฟ้มที่ทำการลิงค์
ฮาร์ดลิงค์ (Hard link) คือ การเชื่อมการอ้างอิงโดยเก็บหมายเลขบล็อกในหน่วยเก็บข้อมูล เป็น Direct Reference
ถามMetadata ในระบบไฟล์คืออะไร
ตอบข้อมูลเกี่ยวกับไฟล์อื่น ๆ อาทิ เวลาที่สร้างแฟ้ม เวลาปรับปรุง หรือสิทธิ์เข้าแฟ้ม
ถามFile Descriptor ในระบบไฟล์คืออะไร
ตอบเป็นข้อมูลที่ใช้อธิบายไฟล์
1. File name
2. File size
3. File type
4. File location
5. Date and time of creation
6. Protection information
7. Record size
ถามรูปแบบของเรคคอร์ด มีกี่แบบ อะไรบ้าง
ตอบมี 2 แบบ
1. Fixed-length records
2. Variable-length records
ถามโครงสร้างไดเรกทรอรี่มีกี่แบบ อะไรบ้าง
ตอบมี 5 แบบ
1. Single level directory ไม่มีไดเรกทรอรี่ย่อย
2. Two level directory มีไดเรกทรอรี่ย่อยแยกตามผู้ใช้ (Master File Directory) และผู้ใช้มี directory (User File Directory) ได้อีก 1 ระดับ เพื่อจัดการไฟล์
3. Tree structured directory เป็นไดเรกทรอรี่แบบต้นไม้ ลึกกี่ชั้นก็ได้
4. Acyclick graph directory เป็นไดเรกทรอรี่แบบไม่มีวง ไม่วนกลับที่จุดเดิม แต่อาจเกิดลงได้ มีจำนวนชั้นได้เหมือนแบบต้นไม้ จุดเด่นคือไฟล์เดียว เก็บได้ใน 2 ไดเรกทรอรี่
5. General graph directory เป็นไดเรกทรอรี่แบบกราฟ เป็นไดเรอทรอรี่แบบไม่มีวง มีความยืดหยุ่นสูง แต่เสี่ยงกับการลบไดเรกทรอรี่ แล้วเกิดการลบอย่างต่อเนื่องได้ ต้องอาศัย Garbage collection ในการช่วยจัดการ
ถามการควบคุมการเข้าถึงไฟล์ แบ่งได้กี่ประเภท อะไรบ้าง
ตอบแบ่งได้ 4 แบบ
1. Access Control Matrix เป็นตารางสำหรับควบคุมการเข้าถึงแฟ้ม เชื่อมผู้ใช้กับรายการแฟ้ม สิ่งที่ควบคุมอาจเป็น 0 กับ 1 หรือ RWX ก็ได้
2. Access Control Lists เป็นตารางที่ระบุว่าแฟ้มงานนั้น ใครเข้าถึงได้บ้าง มีคำสำคัญคือรายการงาน ส่วนข้อมูลคือรายงานชื่อผู้ใช้ว่าใครทำอะไรกับแฟ้มงานใดได้บ้าง ผลเหมือน Access Control Matrix แต่ใช้พื้นที่น้อยกว่า
3. Capability Lists เป็นตารางที่ระบุว่าใคร เข้าถึงแฟ้มงานใดได้บ้าง เป็นตารางคล้าย Access Control Lists แต่มีคำสำคัญคือชื่อผู้ใช้ ส่วนข้อมูลคือแฟ้มงานที่จะควบคุม
4. Lockwords เป็นรหัสป้องกันการเข้าถึงไฟล์ แฟ้มที่ถูกล็อก จะจัดเก็บใน Directory เฉพาะ ต่างกับ Password เป็นรหัสป้องกันการเข้าใช้ระบบ
ถามระบบไฟล์ (File System) ของระบบปฏิบัติการ ที่น่าสนใจ มีอะไรบ้าง
ตอบ AFS (Andrew File System) : a distributed file system, often used in WAN. It was developed by Carnegie Mellon University as part of the Andrew Project.
AUTOFS : for automatically mounting file systems/data media to the system, therefore not a real file system
DEVPTS : for pseudo-terminals (complies with UNIX'98 specification) (TTY = เครื่องโทรพิมพ์ / teletype / teletypewriter / touch teletype และ PTY (pseudo terminal device) is a terminal device which is emulated by an other program (example: xterm, screen, or ssh are such programs). A pts is the slave part of a pty.)
ext2 : second extended filesystem is a file system for the Linux kernel. It was initially designed by R?my Card as a replacement for the extended file system (ext).
ext3 : third extended filesystem, is a journaled file system that is commonly used by the Linux kernel.
HPFS (High Performance File System) : is a file system created specifically for the OS/2 operating system to improve upon the limitations of the FAT file system.
ISO 9960 : is a file system standard published by the International Organization for Standardization (ISO) for optical disc media.
JFS : journaling file system originally developed by IBM for AIX (IBM UNIX); since February 2000 an Open-Source-licensed beta version is available as a patch for Linux
MINIX (Mini Unix) : file system from Minix, often used for Linux floppy disks
MSDOS : file system for MS-DOS partitions and floppy disks (short file names)
NFS (Network File System) : is a distributed file system protocol originally developed by Sun Microsystems in 1984, allowing a user on a client computer to access files over a computer network much like local storage is accessed.
NTFS (New Technology File System) : is a proprietary file system developed by Microsoft. Starting with Windows NT 3.1. it is the default file system of Windows NT family.
NWFS : is a file system based on a heavily modified version of FAT. It was used in the Novell NetWare operating system.
PROC / PROCFS : process management under /proc
ReiserFS : Reiser file system, named after its creator Hans Reiser. Introduced in version 2.4.1 of the Linux kernel.
SMBFS : Samba (network file system under Windows)
SWAP : swap partitions or files
UDF : universal disk format (CD-RWs and DVDs)
USBDEVFS : for connecting and managing USB devices
VFAT : DOS/Windows 9x file system (long file names)
XFS : journaling file system in UNIX; originally developed by SGI for IRIX, its custom-made UNIX; meanwhile a GPL beta version has become available as a patch for Linux
ถามการเข้าถึงดิสก์ (Disk Scheduling) มีกี่แบบ อะไรบ้าง
ตอบมี 5 แบบ
1. การจัดเวลาแบบมาก่อนได้ก่อน (FCFS scheduling)
2. การจัดเวลาแบบเวลาสั้นสุดได้ก่อน (SSTF scheduling)
3. การจัดเวลาแบบ SCAN (SCAN scheduling)
4. การจัดเวลาแบบ C-SCAN (Circular-SCAN scheduling)
5. การจัดเวลาแบบ (Look scheduling)
แนะนำเว็บไซต์ (Website guide) + http://www.sirikitdam.egat.com/WEB_MIS/103_116/07.html
+ http://www.cs.wisc.edu/~bart/537/lecturenotes/s28.html
+ http://www.cs.cf.ac.uk/User/O.F.Rana/os/lectureos11/node24.html
เอกสารอ้างอิง (Reference) [1] Abraham silverschatz, Peter baer galvin, "Operating system concept", John wiley & Sons, New York, 2003.
[2] Milan Milenkovic, "Operating systems: concepts and design", McGraw-Hill inc., New York, 1992.
[3] William stallings, "Operating system", Prentice hall, New York, 1999.
[4] ไพศาล โมลิสกุลมงคล และคณะ, "ระบบปฏิบัติการ", สำนักพิมพ์ดวงกมลสมัย, กรุงเทพฯ, 2545.
[5] พิเชษฐ์ ศิริรัตนไพศาลกุล, "ระบบปฏิบัติการ (Operating system)", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2546.
[6] ดร.ยรรยง เต็งอำนวย, "ระบบปฏิบัติการ (Operating system)", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2541.
[7] ประชา พฤกษ์ประเสริฐ, "ระบบปฏิบัติการ", บริษัท ซัคเซส มีเดีย จำกัด., กรุงเทพฯ, 2549.
[8] วศิน เพิ่มทรัพย์, "คู่มือ MS-DOS", พี.เอ็น.การพิมพ์, กรุงเทพฯ, 2545.
[9] ชนินทร์ เชาวมิตร, "คู่มือยูนิกซ์เดสก์ทอป", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2538.
[10] รศ.ดร.กฤษดา ขันกสิกรรม, "ระบบปฏิบัติการ (Operating Systems)", อาง้วนการพิมพ์, นครสวรรค์, 2555.

http://goo.gl/72BPC