Topic: Persistence
Well, time has flown by, and I’m already in my final week of my operating systems class. There were no assigned readings this week, but we do need to study for the final exam. A big part of the material for the last two weeks has been on persistence in operating systems. As I mentioned last week, persistence, in the context of operating systems, refers to the ability of storage to maintain a state—meaning that if a device is unexpectedly shut off, the data remains intact and is maintained. In a sense of life, persistence also means moving forward despite difficulties. We’ve encountered challenges, whether with lab projects or understanding complex concepts, but you don’t give up when you struggle; you keep moving forward to better yourself.
Thursday, December 12, 2024
CST334 - Week 7
Write what you learned this seventh week in CST 334
Topic: Persistence
This week, we covered a critical area of operating systems—persistence. The readings focused on how the operating system interacts with I/O devices, particularly highlighting DMA (Direct Memory Access) and PIO (Programmed I/O). DMA allows data transfers between devices and main memory without the CPU's direct involvement, freeing it up for other tasks. In contrast, PIO requires the CPU to handle each data transfer, which consumes CPU time and limits its ability to perform other operations simultaneously
We also discussed the role of hard disk drives and RAIDs in maintaining data persistence. Persistence refers to the ability of a storage system to retain data even when the system is powered down. Hard disk drives achieve persistence by storing data magnetically on platters, ensuring that the data remains accessible even if power is lost unexpectedly. RAIDs offer additional persistence through redundancy, protecting data from failures by storing duplicate copies across multiple disks. For example, in RAID 1, data from the first drive is mirrored, or duplicated, to the other drive. This setup ensures that if the primary drive fails, all your data is still backed up on the second drive.
Thursday, December 5, 2024
CST334 - Week 6
Write what you learned this sixth week in CST 334
Topic: Semaphores
This week, we continued learning and explored the topic of semaphores and their use in synchronizing multi-threaded applications. In our lab, the goal was to become familiar with semaphores, use them for synchronization, and solve the producer-consumer problem. This was done by tracking available buffer slots and ensuring mutual exclusion using semaphores. Overall, I found the lab interesting, as it deepened my understanding of how semaphores manage shared resources in multi-threaded programs.
Subscribe to:
Posts (Atom)
CST462S - Service Learning Experience
With the first half of my Summer semester now coming to a close, I am submitting my final assignments and preparing for the upcoming class i...
-
Write what you learned this sixth week in CST 334 Topic: Semaphores This week, we continued learning and explored the topic of semaphores an...
-
Write what you learned this third week in CST 334 Topic: Introduction to Memory Virtualization This week, we read about how computer memory...
-
Write what you learned this seventh week in CST 334 Topic: Persistence This week, we covered a critical area of operating systems—persisten...