os211

Top 10 List of Week 04

1. Little and Big Endian Explained With an Egg (YouTube Video)

We have learned about Little and Big Endian since we took Introduction to Digital Systems (PSD) course. But to be honest, we might mix it up sometimes. I found this video about Little and Big Endian on YouTube. What unique about it is that the guy from the video uses eggs as analogies. Sometimes something weird can actually make you remember about something, Endian and eggs included.

2. Disk Defragmentation & Drive Optimization as Fast As Possible (YouTube Video)

Extra links
I found multiple videos about Disk Defragmentation on YouTube. They’re all good and I can’t really choose one. So here I list them all.
- What is Disk Fragmentation?
- Disk Defragmentation Explained

The way computer stores data inside hard disks has its drawbacks. One of those is Disk Defragmentation, the event where data is “partitioned” and stored in different locations or addresses. This could affect your computing experience as it could make your computer runs slower. The videos that I list will explain about Disk Defragmentation. All of the videos that I list has great ways of explaining Disk Defragmentation. All of them are so good such that I couldn’t pick one. All has its own unique ways of explaining which might suits some people best.

3. Introduction to Pointers in C (YouTube Video)

Extra links
Here are some more C Pointer videos from the same person. He still has a lot of other C Pointer videos at his channel.
- Declaring & Initializing Pointers in C
- Value of Operator in Pointers
- Pointer Assignment
- Arrays & Pointers in C (YouTube Playlist)

This video and playlist will explain about C Pointers for you. The videos are short but dense. The video is also well made so you can actually enjoy your learning process. Moreover, the explanations are easy to follow and has illustrations to better understand C Pointer concepts. There are still more C Pointers videos at his YouTube channel. There are even other topics other than C if you’re interested.

4. Makefile Tutorial (Article)

I realize that every time we do the weekly demos, we need to run multiple C programs. However, they are all not compiled yet. Normally we need to run gcc c-program.c -o c-program to compile a single C program. But it turns out that we just need to run the make command to compile it all in one go. This is possible because of makefile. This article will teach you how to create your own makefile. Even though there are lots of articles out there that will teach you the same thing, I found that this one is the one that I like the most.

5. What is the Difference Between Swapping and Paging (Article)

Last week I learned that the Windows equivalent of Linux’s Swap is Paging. After some thought, I wonder about the differences between both of them. I found my answer in this article which explains the differences between swapping and paging. What I like about this article is that it’s an all-in-one package. Not only does it have explanations on the difference between swapping and paging, but it also has explanations on what is swap and paging itself.

6. Why Android Swap Doesn’t Make Sense (Article)

One unique thing about Linux is its swapping mechanism. Swapping will make your computer “hang-free” because it avoids the overuse of your computer memory. Reading from the Week04 Slides, I found out that Android phones does not have swap. From what I know Android is based of Linux, so it’s a little weird that it does not have swap. I found this article explaining about why Android does not require swap. It turns out that Android has its own swapping mechanism, even though it’s that the same as the one that is used in Linux.

7. Memory Management Unit (Article)

Memory Management Unit, or MMU for short, is the hardware that handles virtual memory and caching operations. This article will explain about MMU. The explanations are simple and easy to understand.

8. Understanding Libraries in Linux (Article)

This article will explain Linux libraries to you. What I like about this article is that it has both detailed and simple explanations. There are also multiple examples so that you could understand the concepts of Linux libraries further.

9. Static vs. Shared Libraries (YouTube Video)

There are two types of Libraries in Linux, Static and Shared Libraries. This video explains what both static and shared libraries are. Other than that, the guy from the video also includes examples and real-life scenarios of Linux Libraries usage. The video is well made and has clear explanations. However, the video might not be for everyone, especially those who got easily bored of watching the same person talk and explain for minutes. Overall, this is quite a good video to learn about Linux Libraries.

10. Why do executables depend on the OS but not on the CPU? (Forum)

I was a little curious about executable files. From what I know, executable files in Windows are the .exe files. However, I haven’t seen any .exe files in Linux so far. After a good amount of Google, I found this forum which talks about executable files in different operating systems. The top voted answer does not only give out simple answers, but it also gives us detailed answers. I found this answer interesting because it answers beyond my question.