Alifyandra's OS202 GitHub Page 🤓

Logo

This page will be regularly updated with weekly top 10 lists and my very own personal log. Stay tuned!

View the Project on GitHub alifyandra/os202

cd ../

Top 10 List of Week 04

  1. Why the need to represent numerical data alternatively?

    Data is represented differently in computer science very commonly, why? Numbers in computers are actually interpreted as binary digits, hence it creates many alternatives to how we can simplify its interpretation instead of seeing a sea of 1’s and 0’s.

  2. Hardware Address Protection

    Hardware protection is divided into 3 categories:

    • CPU Protection: a timer is used to give a certain amount of time to a process
    • Memory Protection: use 2 registers to check a process that wants to access the memory.
    • I/O Protection: making sure processes that access I/O go through system call.
  3. Address Binding

    Address binding is the process of mapping from one address space to another address space. Logical address is address generated by CPU during execution whereas Physical Address refers to location in memory unit(the one that is loaded into memory).

  4. Swapping/Paging

    Swapping is a useful technique that enables a computer to execute programs and manipulate data files larger than main memory. The operating system copies as much data as possible into main memory, and leaves the rest on the disk. When the operating system needs data from the disk, it exchanges a portion of data (called a page or segment) in main memory with a portion of data on the disk.

  5. Memory Allocation/Memory Management

    Memory management is a form of resource managementapplied to computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and free it for reuse when no longer needed. This is critical to any advanced computer system where more than a single process might be underway at any time.

  6. Logical Addresses

    Logical Address is generated by CPU while a program is running. The logical address is virtual address as it does not exist physically, therefore, it is also known as Virtual Address. This address is used as a reference to access the physical memory location by CPU. The term Logical Address Space is used for the set of all logical addresses generated by a program’s perspective.

  7. Pointers in C

    This video helped me understand more about how pointers work in C as they were pretty confusing at first. When used correctly, C pointers can unleash the power of the C programming language.

  8. Linux Libraries There are two Linux C/C++ library types which can be created:

    1. Static libraries (.a): Library of object code which is linked with, and becomes part of the application.
    2. Dynamically linked shared object libraries (.so): There is only one form of this library but it can be used in two ways.
      1. Dynamically linked at run time. The libraries must be available during compile/link phase. The shared objects are not included into the executable component but are tied to the execution.
      2. Dynamically loaded/unloaded and linked during execution (i.e. browser plug-in) using the dynamic linking loader system functions.
  9. Page Tables

    A page table is the data structure used by a virtual memory system in a computer operating systemto store the mapping between virtual addressesand physical addresses. Virtual addresses are used by the program executed by the accessing process, while physical addresses are used by the hardware, or more specifically, by the RAM subsystem.

  10. RAM

    RAM (Random Access Memory) is the hardware in a computing device where the operating system (OS), application programs and data in current use are kept so they can be quickly reached by the device’s processor. RAM is the main memory in a computer, and it is much faster to read from and write to than other kinds of storage, such as a hard disk drive (HDD), solid-state drive (SSD) or optical drive.

    Random Access Memory is volatile. That means data is retained in RAM as long as the computer is on, but it is lost when the computer is turned off. When the computer is rebooted, the OS and other files are reloaded into RAM, usually from an HDD or SSD.

cd ../