Posts

Showing posts from July, 2025

CST 334: Week 5

I had not yet received my overall Midterm Exam score when I started writing this post but based on my experience going through the exam problems and the initial score I received on completion shows I need to improve my understanding of the conceptual material in this class. I know I could use some more time to digest the reading material because I tend to go through it once using a read aloud feature because it helps me keep pace rather than getting stuck or distracted. Additionally, I don’t feel like there’s enough time available in my week to do the reading at a slower pace than what I do now. Therefore, I need to find a solution that will allow me to retain more or least track where certain information is so it’s easier to find.  In addition to what I’ve learned from my experience taking the midterm, we learned about concurrency and threads. Threads allow more than one point of execution within a single program, so the program can perform multiple tasks at the same time, which i...

CST 334: Week 4

  Write a 1 - 2 paragraph journal post, of at least 250 words, of what you learned this week in CST 334. As an alternative to base-and-bounds, we learned this week that we can implement a technique called paging. This technique breaks virtual address space up into sections of equal size. In comparison to base-and-bounds, paging is simpler to implement and much more flexible in use and it allows us to avoid fragmentation. On the downside, paging needs larger data structures for translation, so more space is used, and translation info does not fit into the MMU registers, which makes paging slower than using base-and-bounds.  Each process will have a page table, which logs a page frame number, or PFN, that corresponds with a virtual page number, or VPN. Virtual addresses are made up of the VPN and then what is referred to as the offset. During address translation, we retrieve the PFN using the VPN in the page table and replace the VPN in the virtual address with the PFN, and we e...

CST 334: Week 3

Write a 1 - 2 paragraph journal post, of at least 250 words, of what you learned this week in CST 334. This week we learned more about address spaces. For example, we learned that each location in RAM memory has a physical address. When we are working in a code editor, we refer to values with variable names, while when the program is compiled, they are turned into memory addresses. Additionally, each process has its own address space, which is a set of addresses the compiler can use to address memory. Compiled code consists of virtual memory addresses, which are translated into physical addresses if they fit within a designated address space. If a program tries to address memory outside the address space, a trap occurs. The name of the hardware component that is used to implement virtual memory into physical memory is called the memory management unit, or the MMU. As part of the MMU, the base and bounds registers are used to determine the size of a process’ virtual space and the physic...

CST 334: Week 2

Write a 1 - 2 paragraph journal post, of at least 250 words, of what you learned this week in CST 334. This week we developed a deeper understanding about processes. For starters, the OS has data structures to hold information about processes that include their id, their state, their register values, and the size of memory. Additionally, the OS needs to manage each process’ state, which can either be ready, running, or blocked. When a process is in the ready state, it is prepared to run and waiting to be chosen by the OS. Once the process is chosen by the OS, it moves into the running state and begins implementing its instructions. When a process needs to wait for an event (such as I/O completion or a resource to become available), it moves from the running state to the blocked state. Once the event occurs, the process transitions back to the ready state. To ensure all processes are given an opportunity to run through to completion, we will apply scheduling policies to dictate when pro...

CST - 334: Week 1

  Write a 1 - 2 paragraph journal post, of at least 250 words, of what you learned this week in CST 334. This week in CST - 334, I learned that there are various buses for sending bytes between the CPU, or the central processing unit, and the other components within the computer. These buses send bytes at varying speeds, where those that perform at the highest speeds are also the closest to the CPU.  A few buses that are used in computer architecture include the memory bus, the general I/O bus, and the peripheral I/O bus. Additionally, I learned that there is a computer storage hierarchy where superiority is based on how fast the access time is for a specific data storage. Registers, for example, are at the top of the hierarchy and have a typical access time of 1 nanosecond, whereas magnetic tape is at the bottom and has a typical access time of 100 seconds. At first, it seems as though the slower the access time, the larger the storage capacity will be for the data storage, b...