Learning Journal - Week 30
From this past week in CST-334, we spent more time focusing on virtual memory and translations. It helped to solidify my understanding of concepts like paging from last week, and elaborated on concepts like Memory Allocation in C. Recap One of the first things we went over was free space management, which focuses specifically on how C functions like malloc() and free() work under the hood: the operating system tracks a large block of all the free space, and as memory-allocation is called then a header is set at the beginning position tracking how much space it takes up. The chunks of free space separated by chunks of allocated space ends up in a data structure called the free list , which keeps track of the starting address of the unallocated memory and its size (how many bytes it has available adjacent to it). When the allocation function is called, it can either grab from the free region it finds first ( first fit ), from the region with the ...