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

HOME

Top 10 List of Week 00

  1. Why we need an OS

    An operating system acts as an intermediary between the user of a computer and the computer hardware. It provides an environment in which a user can execute programs in a convenient manner.

  2. Functionality of an OS

    Manage a computer’s resources, establish a user interface, and execute and provide services for application software.

  3. OS Design Issues

    Flexibility: Designs that have been motivated to allow system to be tailored to specific apps.

    Reliability: The range of quality among operating systems.

    Performance: The rate that software improves is slower compared to hardware.

    Security: Confidentiality, integrity, and availability.

  4. Networked and single user OS’s

    Networked, client-server, distributed OS’s can communicate through a network of nodes or clients while a single user OS is just a single computer with only one OS that is operated by a single person.

  5. Security threats to an OS

    • Breach of confidentiality

    • Breach of integrity

    • Breach of availability

    • Theft of Service

    • Denial of Service (DOS)

  6. Logical Layer of an OS

    Provides high level functions, like file management, internet and networking facilities, etc

  7. Application Programming Interface (API)

    An API is a specified set of functions that are available to a programmer that includes the parameters passed to each function and the return values to expect. In the context of an OS, a programmer accesses an API via a library of code provided by the operating system.

  8. Resource Management on an OS

    An OS is essentially system software that manages computer hardware & software resources to be used for computer programs. How an OS does this is through CPU scheduling, the method of assigning work to resources that compete the work.

  9. Contrasting Kernel and User Mode

    These are 2 modes of operation in an operating system, the system is in user mode when the operating system is running a user application such as handling a text editor. The transition from user to kernel mode occurs when an application requests the helo of the OS or an interrupt or system call occurs. The kernel mode is a mode used when some privileged instructions need to be executed such as interrupt instructions or I/O management etc.

  10. Structuring Methods of an OS

    A simple structure is a well defined small structure where interfaces and levels of functionality are not well separated like MS-DOS. A layered structure breaks down the OS into a number of layers that are designed where each layer uses the functions of the lower level layers only. A micro-kernel structure removes all non-essential components from the kernel and implements them as system and user programs. Lastly a modular structure is considered the best because the kernel only has a set of core components and other services are added as dynamically loaded modules to the kernel either during run time or boot time.