os211

Top 10 List of Week 05

1. What is a kernel (YouTube Video)

I’ve been hearing the word kernel for quite some time now. I can finally get an insight about what is a kernel after watching this video. It turns out that a kernel is the layer that connects hardware and software. I like this video amongst the other because it has good explanation and even include examples to better your understanding. Moreover, he also said that you can customize your own kernel, which sounds very interesting.

2. Custom Linux Kernel (YouTube Video)

Extra links
The guy from the video also includes a link to an article. There you can find the command to upgrade your kernel for Debian.
Custom Kernel in Linux (Article)

It turns out that you can actually customize your kernel and this video shows us how to do so. The guy from the video includes a small walkthrough through the installation process. It’s interesting how you can actually customize your own kernel. In my opinion, this is one of the aspects of why many people really like Linux, because of its flexibility and customizability.

3. Configuring a Custom Linux Kernel - 5.6.7-gentoo (YouTube Video)

I found another custom kernel walkthrough. However, this walkthrough is more detailed because it shows you the whole process from the beginning until the end of the installation process. He customizes his kernel to get a better performance out of his computer. It’s interesting how your computer can actually do more than you thought by customizing the kernel. This way, all of the settings and configs are more geared towards performance.

4. Page Fault (YouTube Video)

This is quick video explanation about page fault. From what I infer from the video, page fault is similar to a miss in caching. A page fault occurs when the main memory does not have the page that the CPU needed. I really like this video because the video is worth your time. The explanation is dense yet short to watch.

5. What is thrashing (YouTube Video)

I felt a little uneasy after watching this video. Paging is a little different from caching. In caching you can rely on the temporal and spatial locality so that the process of swapping cache blocks can be more efficient. However, paging will literally ask for which page file the CPU needs. This could lead to thrashing, the process where the computer keeps on loading page files into the memory rather than having the CPU to execute the instruction. The video might be long, but I had a better understanding about thrashing after I watch the video.

6. Techniques to handle Thrashing (Article)

Reading this article relieves me. It turns out that there are ways to avoid and handle thrashing. This article will explain the methods that are used to handle thrashing. After reading the article, I found out that one way to avoid thrashing is to control the page fault rate. Because the less page fault that occurs will also make the thrashing low. We can decrease the page fault occurrences by increasing the number of frames. Of course, there is the sweet spot where everything is optimized.

7. Copy-On-Write Fork (YouTube Video)

This is the third week where I met Copy-On-Write (COW). However, this time, I can finally understand what COW actually is thanks to this video. I really like his explanations compared to the other videos available. His explanation is clear, and he also provides illustrations that helped me understand the topic better.

 ____________________________
< Hello, I'm a Copy-On-Write >
 ----------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

8. Using RAM as Storage (YouTube Video)

Extra links
I also found this forum which discuss the use of SRAM as main memory.
Why don’t we use SRAM as DRAM (Article)

If we recall the Computer Memory Hierarchy pyramid from POK course, we know that memory hierarchy is used to overcome the cost-to-performance ratio of a system. If we use, let’s say SRAM, as our main memory, then the cost and space of our system would be very large. Same goes with using RAM as storage and such. However, even though those are not recommended, its technically possible to do so. So, I stumbled upon this video where the guy uses RAM as storage to boost his system performance. Yes, he did make a performance boost to his system, but that cost him with a lot of money to buy extra RAM (even though he is sponsored).

9. What is the Difference Between Physical and Virtual Memory (Article)

This article is about the differences between physical dan virtual memory. In short physical memory is your actual computer memory, the RAM. While virtual memory is the memory management that is done by the operating system. I really like this article because it gives you both quick and detailed explanations about both memory types.

10. How to Use the Linux top Command (Article)

This article will explain about the top command. I really like this article because it teaches you how to actually read the data that are displayed in the top table. This article also includes pictures so that you can get a better overview.