Overview

Overview

This post is an overview. Just think about it like “Most of them have this and that” and move on.
The concepts shown here will be covered in detail in a later posting.


Anyone who has used a computer has heard the word OS.
Windows, macOS, Linux, etc., which we’ve heard about once in our lives, are all operating systems.

Why do I need an OS? It is necessary for resource management.
ls I will talk about OS in the next, resources(cpu, memory, etc …) are limited and very important.
First, I will briefly explain the computer system and OS.

Computer System

Before we get into the OS, let’s take a look at the CPU and computer structure.
These are structure summaries of the CPU and Computer.

computer

picture [1-1] Computer structure

cpu
picture [1-2] CPU structure


The computer consists largely of CPU, main memory, and I/O modules,
and the CPU consists of ALU, a memory area register, and a control unit.
Various inputs and commands are passed through the bus to memory and registers, registers and ALUs, and many other devices.

The memory is hierarchical.

hierarchy
picture [2] Memory hierarchy


The closer it is to the CPU, the faster it is, and the closer it is to the HDD (the more SSD or NVME is used in parallel these days), the slower it is and the larger the capacity.

good terms to know
- GPU: Graphical Proccessing Unit.
It is equipped with hundreds or thousands of cores.


- SIMD: Single Instruction Multi Data.
It is a type of parallel processing that enables a single instruction to be executed simultaneously on multiple pieces of data.


- DSP: Digital Signal Processor.
It is a specialized microprocessor designed for processing digital signals such as audio, video, and telecommunications signals.


Operating System

There’s one I need to make sure before start os.
OS is an omnipotent system, but it’s like a program.

call command
picture [3-1] OS is a program picture [3-2] command flow


The command, flow, and fetch will be explained in “Chap2. process”,
but what is dispatched is that the OS is called between programs as well as regular programs to manage resources.

OS is an interface between application and hardware.

If you look at the overall structure briefly,

interface full-name for
API Application Programming Interface app
ABI Application Binary Interface os
ISA Instruction Set Architecture hardware

table [1] library

It can be represented like above.

Upgrade steps of OS

I’ll describe the concept of OS with the development steps of OS.

step Index
step 5 multi physics (multi core)
step 4 time-sharing
step 3 multi programming batch system
step 2 simple batch system
step 1 serial process

table [2] steps of upgrade


Step 1. serial process

It’s the beginning of the process, It is not Operating System.

Step 2. simple batch system

It is a method of sequentially processing programs over time.


+--- monitor ---+                 +--- monitor ---+                 +--- monitor ---+
|               |                 |               |                 |               |
|               | => program A => |               | => program B => |               | => ...
|               |                 |               |                 |               |
+---------------+                 +---------------+                 +---------------+

These are the conditions for the desirable behavior shown at this stage.

  • monitor memory protection.
  • Timer.
  • privileged Instruction. (user mode / kernel mode)
  • Interrupt.

Step 3. multi programming batch system.

It’s to keep various programs running nonstop.
How multiple user programs are handled as if they were running simultaneously.
The concept of concurrency emerges.
Parallel processes of multi core and concurrency are different.

Step 4. time-sharing

Improved user responsiveness over multi-deployment approaches.
In general, each program sets its own time and runs only that amount of time and moves on to the next program.
Typically, there is a round-robin method.

Step 5. multi physics (multi core)

It literally means multiple cores.
OS documentation is based on single core.

Next =>

Updated:

Leave a comment