os212

Quick Access

| Home | Links | Log | Repository | Key | Rank | Tips |

Useful Links

These are links that are often visited by me. These links are related to operating systems and GitHub including scripting, Markdown, Linux tutorials, etc.

1. Markdown Guide

Visit Here
Markdown Guide is an open-source Markdown reference guide by Matt Cone, a technical writer at Fastly, that fully explains how to use Markdown. This website explains basic and advanced Markdown syntaxes clearly with examples. It also provides cheat sheets for easier use. This website also sells “The Markdown Guide” Book by Matt Cone for $5.

2. CryptoHack

Visit Here
CryptoHack is a platform where you can learn about cryptography. Not only it provides courses for almost each cryptography algorithms, it also provides challenges to users with different level starts from the introduction of cryptography, math, all the way to advanced and complex algorithms such as Elliptic Curves and Hash Functions. This platform helps you understand how each cryptography algorithm works, how to encrypt or decrypt them, their advantages, vulnerabilities, and how to exploit said vulnerabilities. Not to mention this platform is completely free and you can also record your progress and see your rank on the leaderboard if you made an account. This platform also has blogs and Discord server where you can share and receive news from other people’s experiences in cryptography.

3. What Is a File System? Types of Computer File Systems and How they Work – Explained with Examples

Visit Here
The title really self explanatory. This is not a website, rather this is a post by Reza Lavarian from freeCodeCamp where he explains about filesystems in general. His explanation is included with pictures and examples so it is easier to understand. This post explains from what is a filesystem, the purpose of filesystem, how it works, all the way to maintaining data integrity. Oftentimes I reread this post as a reminder of filesystems works. Well, it’s not really that detailed but it at least provide me the keywords for me to learn further.

4. RegExr: Learn, Build, & Test RegEx

Visit Here
RegExr is a platform created by Grant Skinner and the gskinner team where you can learn and test regular expressions or RegEx. This website provides you with detailed explanation of RegEx. It also has a feature where you can write your own RegEx and test them wheter the text you’ve written matches with your RegEx or not. This website also provides cheatsheet for easier use.

5. Vi/VIM documentation

Visit Here
This is a documention of Vi. The UI/UX may be not the best, but it has very detailed information about Vi. This websites can redirect you to the basics of VI, tips and tricks, and also VI original man page.

6. Pointers in C / C++ [Full Course]

Visit Here
This is a Youtube video that was created as a playlist made by the excellent instructors from MyCodeSchool, but compiled and reuploaded as one 4 hour length video by freecodecamp.org. This video explains about pointers in C/C++, which is one the most challenging topic to understand. Since this is a very detailed, slow paced video, I recommend you to not watch it in one sitting. You also have to practice after each subtopic ends, so that you can remember the concept more. This video explains pointers in general, its purpose, pointer types, pointers as function arguments, pointers and arrays, function pointers, etc.

7. Operating System - Virtual Memory

Visit Here
This page provided by tutorialspoint explains how Virtual Memory of Operating System work in general. This page explains virtual memory, demand paging, page replacement algorithms and page buffering algorithm. This might not be the detailed explanation of said virtual memory, but at least you get the general info on how and why it works, and everything else that you should know. This can provide you keywords which you can search the detail of from google.

8. Operating System: Threads and Concurrency

Visit Here
This article made by Akhand Mishra explains necessary keywords about Threads and Concurrency, such as definition, its purpose, and other stuffs. Same with previous article, this isn’t very detailed but able to make you understand the general picture of operating systems’ threads and concurrency.

9. Process Synchronization

Visit Here
In this article made by Study Tonight, they cover a lot of concept of Process Synchronization in an Operating System. The key concepts they provide are general view of Process Synchronization, Race Condition, Critical Section Problem, and Critical Section Problem’s Solution. They even explain each of said solution, including Peterson’s Solution, Synchronization Hardware, and Mutex Locks. On the next page, you can even find out about Classical Problems of Synchronization, that is, Bounded Buffer (Producer-Consumer) Problem, Dining Philosophers Problem, The Readers Writers Problem, and each problem’s solution. If you keep advancing to the next pages, you can find Deadlock Detection, Prevention, Avoidance, and Recovery in OS.

10. CPU Scheduling Algorithms in Operating Systems

Visit Here
Just like aforementioned websites, this website is kinda general in explaining the concepts about CPU scheduling in Operating System. Might not be detailed, but might be useful for quick reading or writing summaries about CPU Scheduling.

11. Mass-Storage Structure

Visit Here
This website, or rather PDF file, made by Yajin Zhou from Zheijang University explains a Mass-Storage Structure in Operating Systems. It explains the same key points from Chapter 11 of OSC10 by Schilberschatz, where it explains Disk Structure, Disk Scheduling, Disk Management, Swap-Space Management, and RAID Structure, but some of them are explained in more detail and added some image for better explanation. For example, this PDF explains RAID in detail, where in the Chapter 11 of OSC10 power points doesn’t. So if you can’t afford to buy Schilberschatz book and only have access to its powerpoint of Chapter 11, you can read this PDF to learn more information about this topic.

12. I/O Systems

Visit Here
This website summaries I/O Systems made by Silberschatz. This website explains each subsection effectively with its points and images. That includes I/O hardware, Application I/O interface Kernel I/O Subsystem, Transforming I/O Requests to Hardware Operations, STREAMS, and Performance.

This might be the last LINKS because this is the last week I’m doing this in OS (28 Nov). I might add some stuff later, or maybe not. Most probably no. Anyway, thank you for your time reading this. Hope these links helps. To anyone doing Operating Systems in the future, good luck to you!




© 2021-2021 — Haikal Rahman —- Last updated: 28 Nov 2021