Posts

Showing posts from July, 2025

Week 27

CST 334 This is our third week in CST-334, also known as Operating Systems. Operating Systems: Three Easy Pieces This week we read chapters 13-17 in our text book. Chapter 13: Address Spaces Chapter 13 discusses the virtualization of memory, or address spaces. Key Takeaways: Each process has an address space, an abstraction of where its memory is located in physical memory. The goals of virtual memory are transparency, efficiency, and protection. Chapter 14: Memory API Chapter 14 discusses the malloc and free functions in the C language. Key Takeaways: The malloc function attempts to allocate memory on the heap. It returns a pointer to the allocated memory on a success, or NULL on a failure. The free function takes a pointer returned by malloc, and frees the associated memory. Several errors are possible with manual memory management, such as forgetting to allocate memory, not allocating enough memory, forgetting to initialize allocated memory, forgetting to free memory, and freeing me...

Week 26

CST-334 Week 2 This week was our second week in CST-334, also known as Operating Systems. Operating Systems: Three Easy Pieces This week we read chapters 4-8 of our course textbook. Chapter 4: Processes This chapter discusses processes, which are running programs, and how the OS virtualizes the CPU to run multiple processes. Key Takeaways: The OS runs multiple processes by stopping and starting them during context switches. All OSs have APIs that processes use to interact with resources and the OS. To create a process executable code of a program must be loaded from storage onto memory. Processes can be running, ready, or blocked. The OS tracks data for each process.  Chapter 5: Process API This chapter discusses certain important aspects in Process APIs. Key Takeaways: The fork() system call creates a new process. The new process is identical to its parent process when it made the system call. The wait() system call allows a process to wait for another process, or its child proces...