os202

Mohammad Saddam Mashuri's OS202


Project maintained by saddamonpc Hosted on GitHub Pages — Theme by mattgraham

HOME

Top 10 List of Week 00

  1. Important Functions of an Operating System
    An operating system is a piece of software that manages the allocation of computer hardware. This means, simultaneous managements (memory, processor, etc.) is detremental to the OS itself.

  2. Main Task of an Operating System
    Operating system allocates resources and services, like memory and processors, such that it can do whatever the user wants to achieve with the computer.

  3. Client-server model
    Client–server model is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients.

  4. Design Issues of an OS
    • Transparency
      Multiple Computers are used but the user gets a view of only single system being used. Makes the network invisible to user/applications.
    • Flexibility
      Designs have been modified by the desire to allow the system to be tailored to the requirements of specific applications
    • Reliability
      Reliability is the ability of a system to perform well even in unexpected circumstances. This one is considered important by end users.
    • Performance
      The rate that software improves is slower compared to hardware, although reliable in time. However, it is difficult to find an objective performance metric as a “faster OS” is very subjective.
    • Scalability
      Scalability is a desirable property of a system, a network, or a process, which indicates its ability to either handle growing amounts of work in a graceful manner, or to be readily enlarged.
    • Replication
      Replication is one of the oldest and most important topics in the overall area of distributed systems.Whether one replicates data or computation, the objective is to have some group of processes that handle incoming events.
    • Synchronization
      Processes requires coordination to achieve synchronization.
    • Security
      Authentication and Authorization is a must to identify administrative users.
  5. Application Programming Interface (API)
    An API is a set of commmands, functions, protocols, and objects such that programmers can develop softwares for performing common operations. The benefit is that developers don’t have to write the code again from scratch.

  6. Difference of User Mode and Kernel Mode in OS
    The system is in user mode when the OS is running a user application, such as a web browser. There is a transition to the kernel mode when the application requests the help of the operating system or an interrupt or an instance of system call happens. In contrast, Kernel mode occurs when the system boots and after the operating system is loaded.

  7. Operating System Structures
    An operating system is a construct that allows the user application programs to interact with the system hardware. Below are methods to structure them:
    • Monolithic
      The monolithic operating system is a very basic operating system in which file management, memory management, device management, and process management is directly controlled within the kernel.
    • Layered
      Layering provides a distinct advantage in an operating system. It is easier to create, maintain and update the system if it is done in the form of layers. There are 6 layers, starting from the core to the highest layer, Hardware, CPU Scheduling, Memory Management, Process Management, I/O Buffer, and User Programs.
    • Modular
      A modular operating system is built with its various functions broken up into distinct processes, each with its own interface.
    • Microkernel
      Microkernel is a software or code which contains the required minimum amount of functions, data, and features to implement an operating system. It provides a minimal number of mechanisms.
  8. Abstraction
    Basically shielding the applications from the finer details, providing common logical view of the hardware.

  9. Potential Security Risks to an OS
    • Breach of Confidentiality (Theft of private information)
    • Breach of Integrity (Unauthorized modification of data)
    • Breach of Availability (Unauthorized destruction of data)
    • Theft of Service (Unauthorized use of data and resources)
    • Denial of Service (DOS) (Preventing genuine users from using the system)
  10. Interrupts
    Interrupt is a response by the processor to an event that needs attention from the software. An interrupt condition alerts the processor and serves as a request for the processor to interrupt the currently executing code when permitted, so that the event can be processed in a timely manner.

Sources for point number 7:
https://www.itrelease.com/2018/07/what-is-a-monolithic-operating-system/
https://www.tutorialspoint.com/layered-operating-system
https://susedefines.suse.com/definition/modular-operating-system/
https://www.guru99.com/microkernel-in-operating-systems.html