CST 334, Journal Entry Week 7

This week, I deepened my undersanding of how operating systems manage files, storage devices, and the underlaying hardware that supports them. Starting with the basics, I learned how files serve as an abstraction over raw storage, allowing users and applications to interact with data as named byte arrays rather than worring about physical disk details. directroies organize these files in a heirarchical structure, mapping human-readable names to inodes that store metadata and pointers to data blocks. I also explored file system operations like opening, reading, writing, linking, and deleting files, as well as how file descriptors and open file tables track active file usage.

From there, I moved into hardware specific topics, focusing on both I/O devices in general and hard disk drives in particurlar. I learned that the OS uses device drivers to abstract hardware differences, ensuring consistant communication between applications and devices. Hard drives store data in fixed-size sectors, and while they support atomic writes at the sector level, larger writes risk partial completion in the event of power loss. The physical layout of disks and their mechancial nature makes scheduling and access patterns critical for performence.

Finally, I studied a simple file system implemnetation model, VSFS, which clarified how file systems manage on-disk structures like the superblock, inode table, and bitmaps for tracking free space. This gave me a clearer picture of how metadata and data are stored, updated, and retrived efficently. Overall, this week strenghtened my grasp of the relationship between high-level file operations, file system structures, and the low-level hardware that stores our data.


Discussion & Comments