Virtualization
-
What is Virtualization?
Virtualization uses software to create an abstraction layer over computer
hardware that allows that computer’s hardware elements to be divided into
multiple virtual computers or virtual machines. This allows for more
efficient utilization of physical computer hardware and its resources.
-
Virtualization As Fast As Possible
This video explains to you about the basic things you should know about
virtualization as fast as possible. Fun fact: you can actually call
virtualization an OS-ception…
Markdown
-
Markdown Guide
Created by John Gruber in 2004, Markdown is a simple and easy-to-use markup
language to virtually format any document. The Markdown Guide teaches you all
the things you need to know about markdown. Starting with getting to know the
origin of it, the basic syntax, and even the extended syntax.
-
Markdown Cheatsheet
When they say markdown is a simple and easy to use markup language, you
probably think it’s not that powerful. In reality, it’s one of the world’s most
powerful and popular markup languages. Here’s a cheatsheet of markdown language
for all of you lazy people!
Scripting
- Learn X in Y Minutes: Bash
Bash (Bourne Again SHell) is a name of the unix shell,
which was also distributed as the shell for the GNU operating system and
as the default shell on most Linux distros. It’s an implementation of Shell and allows you
to perform many tasks, such as performing operations on multiple file quickly via
the command line.
- Bash Scripting Cheatsheet
Bash has many commands and a lot of them takes time to learn. So to ease your work with
Bash while learning it, here is a pretty comprehensive cheatsheet for bash scripting.
- Everyone Needs to Learn a Little Bit of AWK!
AWK is a brilliant scripting language for processing text files, comma separated values, and text databases.
In this video you’ll learn just how much useful and powerful AWK is to help your everyday work.
Security & Protection
- Operating System Security by Professor Messer
Here is a video about some basic things you need to know about OS security. This video consist of types of Operating
Systems, patch management especially on security and system stability, the pros and cons on patches, whitelisting and
blacklisting, disabling unnecessary services and its risks, etc.
- Are Macs Really Safer?
Well, not necessarily. Though it’s true that Mac users don’t get viruses that often like Windows user, it doesn’t
mean Mac is the more safe and protected OS. As to why Mac is not necessarily safer that Windows, you should check
out this video!
- Belajar Memakai GNU Privacy Guard (GnuPG/GPG)
GPG is an application that lets you encrypt, decrypt, and sign a digital data for exchanging data.
It’s a complete and free implementation of the OpenPGP standardas defined by RFC4880(PGP).
GPG is an excellent method to ensure secure communication between two parties, which allows sensitive information
to be easily shared across an insecure network. Here i present to you a useful article that i read to learn about GPG.
- Is GPG Still Useful in Todays Insecure World?
>
The main reason that encryption still exists and is widely used today is to protect user’s communications, data , and
privacy. Moreover, with today’s ongoing security breaches, 0-day vulnerabilities, malicious exploit attempts, and
password being sold on the dark web, makes your security more important than ever. More on that, read this article!
File System
- Unix/Linux - File System Basics
A file system is a logical collection of files on a partition or disk. A partition is a container for
information and can span an entire hard drive if desired. Your hard drive can have various partition
which usually contain only one file system. In this website, you’ll learn the most basic things
about file system.
- 10 Essential Linux Commands For Navigating File System
Linux has a lot of commands that could help our work on a daily basis. Some of them can help you
navigate through your file system. You may have known some of these commands, but do you really know their functionality?
Check this webpage!
- Linux Directories Explained in 100 Seconds
The Linux file system is a cryptic labyrinth of directories defined by the file system hierarchy standard.
This video explain to you all those important directories in just 100 seconds! Yup, this is for you,
lazy people!
Memory Management
- Memory Management in OS: Contiguous, Swapping, Fragmentation
What is memory management? why do we use it? what are the techniques on how memory being managed? How do data being
allocated in our memory? This website gives you full on explanation about memory management. Make sure to check it
out!
- Paging in Operating System - Memory Management
When multitasking comes to picture, your Random Access Memory (RAM) or your primary memory will be full of running
application. Especially whem doing complex, heavy task such as gaming and graphic intensive application, it will
take up more RAM and processing so your computer will need to manage your memory. This video explained how and why
paging is one of the method in which you can manage your memory efficiently.
- What is Address Binding?
If you don’t have time to read a pages of slides or books on address binding, this article will be a good quick read
to introduce you about address binding and its relation to memory management!
Virtual Memory
-What is Virtual Memory? - Gary explains
What is virtual memory? Where is virtual memory? Why is virtual memory? In this video, Gary explain the basics,
the surface of virtual memory in just 11 minutes!
- A Comparison of Three Page Replacement Algorithms
Over the years, a lot of algorithm have been developed to find the best and fastest way to execute the page replacement
process in a computer memory. The First-In-First-Out, Least Frequently Used, and Optimal Algorithm are Three of many
known algorithm to this date. But which one is the fastest and have the most efficient performance if we compare them?
you can read this journal if you’re curious!
- What is Thrash?
When a process accesses a memory page without proper preparations or when it access data or code in its space address
but is not currently located in the system RAM, a page fault occurs. When a page fault happens, the OS will try to
fetch that page from secondary memory and try to swap it with one of the pages in RAM. This process is called swapping.
When the page fault and swapping happens very frequently at a high rate, the OS needs to spend more time swaping these
pages. Are you curious what this state is all about? just click the article above!
Process and Threads
- Process vs Thread by Udacity
Diving into the operating system world, we surely will encounter terms such as process and threads. Check out this
video to differentiate between these two terms! OR you could watch this other video
if you need an explanation in simpler analogy. Both of those videos were made by Udacity!
- Fork() in C Programming Language
The fork() function is the primary method of process creation on Unix-like operation. This function creates a copy
called a child out of the original process, which is called the parent. Note that the fork() function only works
on Linux or Unix based operating system. You should check out this article for more interesting info about fork!
- Operating System Scheduling Algorithms
In some CPU, only 1 process is allowed to run at a time. So how are those processes can be run by the CPU sequentially?
The Process Scheduler comes for to the rescue! It schedules different processes to be assigned to the CPU based on
particular scheduling algorithms. Hmm, i wonder what kind of algorithm it used…
Process Synchronization
- Process Synchronization - Operating Systems
In Operating System, it is often that multiple process tried to access the same data in a shared memory. So, we need
someway to coordinate those accesses with synchronization. This 5 minute video should be useful for those of you
lazy people to understand the basic of this problem!
- Deadlock, Livelock, and Starvation
Many times in Operating System, more than one process may compete for a finite set of resources. Usually if a process
requests for a resource and it’s not available, then the process waits for it. But, there are three scenarios where
this waiting process never succeds, which is deadlock, livelock, and starvation. More info on these scenarios
can be read in this useful article!
I/O System
- Basics of OS (I/O Structure)
One of the important jobs of an Operating System is to manage various I/O devices including mouse,
keyboards, touch pad, etc. An I/O system is required to take an application I/O request and send it to the physical device, then take whatever response comes back from the device and send it to
the application. But what are those I/O systems made of? watch this video about I/O Structure!
- Kernel I/O Subsystem in Operating System
The kernel provides many services related to I/O. Several services such as scheduling, caching, spooling,
device reservation, and error handling are provided by kernel’s I/O subsystem built on the hardware
and device-driver infrastructure. This article provides brief explanation on these kernel’s services.
Linux From Scratch
- Linux from Scratch First Impressions: Waste Of Time?
Now some of you that have done the Week 8-10 assignments of os212 might be wondering, with all that time you wasted trying to
build linux from scratch and compiling all those packages, was it really worth it? to give a slight answer you might
want to check out this video about LFS!
- 8 Tools to Easily Create a Custom Linux Distro
If you think linux from scratch is worth it, i think you might want to fasten the process a little bit. These 8 tools
from this article will help you create your custom linux distro!
- Linux From Scratch 11.0 Guide
This guide is everything you need to build your LFS from the very scratch to a complete and running LFS.
You just need the patient to do all of it lol.