Posts

Showing posts from March, 2025

CST 334 - Week 3

This week was about memory management, which, honestly, was hard to understand. I had some ideas about how it works from when I learned programming and also in the architecture course, but that was some time ago. Now, after reading it again, it’s more confusing than helpful. However, what I understand about how memory works is that it’s used to store data, code, instructions, and more. The main memory is one type of memory that allows fast data processing, but it has a limited size and is cleared when it's no longer needed. The purpose of memory management is to allocate the required memory for each program to run and also to protect the memory of other processes while this happens. For programs, memory is stored in locations to be read and to hold variables and arguments. In some programming languages, memory allocation is done automatically, but in others like C, you can manually allocate memory and also free it when it's no longer necessary. According to the book, allocation...

CST 334 - Week 2

This week in the book, I learned about processes, which are instructions waiting for an action. For the CPU to function efficiently, it’s beneficial to have more than one process working concurrently, such as running a web browser and a video game at the same time. To enable this, the operating system uses virtualization to simulate multiple CPUs. In the process API, UNIX systems contain methods like fork(), exec(), and wait() that allow process management. The fork() system call creates a new process for the parent process. The wait() system call allows the processes to be scheduled to run in order. As for the exec() system call, I didn’t fully understand it from the book, but according to Google, it replaces the current process with a new one. I’m still not sure how this works. Then comes my new nightmare: CPU scheduling, specifically the metric Response Time. The challenge for me was understanding where to find the T first run in order to calculate the T response. I’m still having ...

CST 334 - Week 1

 I have never used Docker before, so I learned the basic commands to use it for the lab and assignment. I'm still not sure about the full usage of Docker, but I found that it is used to have containers for easy access and testing of projects. After that, I also practiced and learned more about the C programming language because I'm not too familiar with it, but with the homework, I had the chance to practice more.