os242

LINKS

General

  1. OS Website: This is OG Operating System course website that has everything from assignments, tutorials, schedules, and so much more!
  2. Introduction to GNU/Linux: Also from the OS website, an intro to command lines, regex, scripting, and others.
  3. Operating System Concept Slides: These slides, although not used for my class’s lectures, also is very important for quizzes.

W00: Overview 1, Virtualization & Scripting

  1. Virtualization Explained: This is the first video that I watched from another Operating Systems GitHub page. This is so helpful for me to understand the basics of virtualization as someone who doesn’t have a single clue about anything regarding this topic and operating systems in general.
  2. What is a Hypervisor?: This is a follow up video from the first one, explained by amazing people from IBM Technology.
  3. Microservices vs Monolithic Architecture: While I was practicing OS MidTerm questions from the OS website, I stumbled upon questions regarding monolithic and micro kernels. As I was very stumped, I searched youtube and found this amazing video. Go check it out!
  4. Recording Week00: Overview 1, Virtualization & Scripting: If you ever miss something in class, this video is here to help you. Explained by Mr. Anwar Ma’sum, this really helped me catch up with the materials that I missed in class.
  5. Linux Command Lines for Beginners: The beginner’s guide to linux commands! Perfect for someone who never explored operating systems and linux.

W01: Overview 2, Virtualization & Scripting

  1. Recording Week01: Overview 2, Virtualization & Scripting: Another great lecture from Mr. Anwar Mas’um! In this video, he demo’ed bash command lines and also explained regex in depth! Really grateful to him as my quiz scores improved in week 01.
  2. Regular Expressions (RegEx) in 100 Seconds: Lazy to study? This 2 minutes video will definitely help you study as it did to me. Perfect for someone who doesn’t understand RegEx with a short attention span.
  3. Shell Scripting for Beginners – How to Write Bash Scripts in Linux: For first time scripters! This website is very comprehensive and easy to follow for beginners. I learnt a lot from here.
  4. Advanced Bash-Scripting Guide: A complete guide for scripting after understanding the basics from link number 3.

W02: Security, Protection, Privacy, & C-language

  1. Recording Week02: Protection and Security: Quick lecture on Protection and Security. The lecturer explained the concepts in a way that is very easy to understand for me.
  2. Recording Week02: C Programming: As someone who has coded with C before, I was still surprised with some things he showed here. This video unpacks lots of things, including data types, pointers, PID, and much more!
  3. C Programming Language - Intro to Computer Science - Harvard’s CS50 (2018): This video was my first introduction to programming. Yes, my first programming language was C, but I soon dropped it and moved to C++. David J Malan is an amazing lecturer. He explained numerous concepts in great detail here, but in a way that is easy to digest. It may be a little too easy for coders that are more familiar with computational thinking from using other languages such as Python and Java, but I would still very much recommend this to anyone.
  4. Difference Between Security and Protection: Before reading this, I seriously thought these two methods are the same thing…
  5. Security Attacks: A short but complete video on active and passive security attacks, and types of active security attacks, such as Masquerade, Replay, DDOS, and others!

W03: File System & FUSE

  1. Recording Week04: File System & FUSE: Another great lecture from Mr. Anwar!
  2. What is a FUSE filesystem?: This website feels like a useful resource for developers curious about FUSE but may feel a bit technical or overwhelming for beginners, though it’s clear the author is passionate and provides detailed, practical examples.
  3. File System vs. Partition Table: The article provides a clear and concise explanation of the difference between a partition table and a file system. It’s a great resource for understanding how storage devices are organized.
  4. File & File Systems: Crash Course Computer Science #20: I really recommend this video as the person explains it in such an easy and interesting way. Go give it a watch!

W04: Addressing, Shared Lib, & Pointer

  1. Recording Week05: Addressing, Shared Lib, & Pointer: As Sir RMS was too sick to teach on Monday, we all watched this lecture video by Mr. Anwar!
  2. you will never ask about pointers again after watching this video: Honestly as a CS student, I have never really understood pointers before watching this video. This video explains it in a very understandable manner so I would really recommend this video!
  3. Pointers in C / C++: This is a very long 3 hour full course on Pointers in C language. Although I have only watched a part of it, the lecturer explains the materials with examples that are fun to understand.
  4. What is difference between Dynamic and Static library(Static and Dynamic linking): Great short video about dynamic library linking.

W05: Virtual Memory

  1. Week06: Virtual Memory Recording: This recording covers Week 6’s lecture, focusing on virtual memory concepts and how they apply to modern operating systems. Great for a detailed walkthrough of the topic.
  2. Segmented, Paged, and Virtual Memory: This video explains the differences between segmented and paged memory and how virtual memory systems combine these concepts. A concise and visual explanation of memory management.
  3. But, what is virtual memory?: A beginner-friendly video that answers the fundamental question of what virtual memory is and why it’s important in operating systems. Easy to follow with clear examples.
  4. Virtual Memory in Operating Systems: A comprehensive blog post from GeeksforGeeks that delves into virtual memory in operating systems, covering paging, demand paging, and other relevant concepts in-depth. Ideal for both quick review and deeper understanding.

W06: Concurrency - Processes & Threads

  1. Process vs Thread - What’s the Difference?: A clear, no-nonsense breakdown of what makes processes and threads different. Great for getting the basics without feeling lost!
  2. Operating System: Processes and Threads: Dives into the roles and structure of processes and threads, explaining why they’re crucial for multitasking. Perfect for building a solid understanding.
  3. Intro to Concurrency in Operating Systems: An accessible intro to concurrency, covering how OSes juggle multiple tasks with processes and threads. Ideal if you’re new to the topic.
  4. Concurrency in Operating Systems: This playlist takes you through concurrency from the ground up, including key concepts like synchronization and handling race conditions.

W07: Threads & Synchronization

  1. Concurrency, Parallelism, and Threads: This video covers concurrency, parallelism, and how threads enable processes to handle multiple tasks at once. It’s great for visualizing the difference between concurrency and parallelism within multithreaded environments.
  2. Multithreading and Concurrency in Operating Systems: A straightforward look into multithreading and concurrency, showing how operating systems use threads to run tasks simultaneously. This video explains thread management and why concurrency is essential for handling modern workloads.
  3. Thread Synchronization Explained: A practical explanation of thread synchronization, detailing why synchronization is needed to manage threads accessing shared resources. This video covers locks, mutexes, and semaphores, perfect for understanding key synchronization techniques.
  4. Synchronization Among Threads - IBM Documentation: This IBM documentation provides a detailed overview of synchronization techniques, including semaphores, locks, and condition variables. It’s a great resource for anyone needing in-depth knowledge of thread coordination and preventing race conditions.

W08: Scheduling

  1. CPU Scheduling Algorithms Overview: A detailed walkthrough of different CPU scheduling algorithms, discussing how each type optimizes task handling in operating systems.
  2. Understanding Process Scheduling: This video explains the fundamentals of process scheduling, providing insights into key concepts like priority scheduling and time slicing.
  3. Round Robin Scheduling in Action: A practical explanation of the Round Robin scheduling algorithm, showing how it ensures fair CPU allocation by assigning equal time slots to processes.
  4. First-Come, First-Served Scheduling: Covers the FCFS scheduling method, where tasks are executed in the order they arrive, and discusses its advantages and potential drawbacks in system performance.

W09: Storage, Firmware, Bootloader, & Systemd

  1. Understanding Firmware and Bootloaders: A comprehensive introduction to firmware and bootloaders, covering their roles in initializing hardware and loading the operating system.
  2. Systemd Basics and Boot Process: This video dives into how Systemd operates as an initialization system and its significance in managing the boot process.
  3. Storage Fundamentals in Linux: An insightful overview of storage systems, including file systems and disk partitioning in Linux.
  4. Boot Process Explained: A detailed explanation of the complete boot process, from power-on to reaching a fully operational Linux system.



LastRev: Tuesday, 19 November 2024 at 21:29