OS
- os는 컴퓨터 하드웨어를 관리
- 어플리케이션과 유저와 hw의 중간다리 역할
- kernel : the one program running at all times on the computer
- os에서 커널이 핵심!
컴퓨터 시스템 Components
- hardware
- os
- application programs
- user
Computer System Organization
- modern computer는 one or more cpu와 device controller들이 bus를 통해 연결되어 있다.
bootstrap
- 컴퓨터 전원을 켰을때, 처음으로 돌아가는 프로그램을 말한다.
- 메모리에 os를 로드하는 일을 한다.
interrupts
- 하드웨어가 버스를 통해서 cpu에게 신호를 보낸다
storage
- storage capacity
- access time
i/o structure
정의
• CPU - The hardware that executes instructions.
• Processor - A physical chip that contains one or more CPUs.
• Core - The back computation unit of the CPU.
• Multicore - Including multiple computing cores on the same CPU. • Multiprocessor - Including multiple processors.
smp
cpu하나에 메모리 하나는 거의 안쓴다. 초소형 임베디드 시스템이 아닌 이상.
multi-core design
multiprogramming
- 동시에 여러가지 프로그램 실행
- cpu 이용률 효율적으로 이용
multitasking(multiprocessing)
- a logical extension of multiprogramming.
- in which CPU switches jobs so frequently that
- users can interact with each job while it is running.
- CPU scheduling:
- If several processes are ready to run at the same time,
- the system must choose which process will run next
Os Operations
- user mode
- kernel mode
virtualization
- VMM: Virtual Machine Manager
VMware, XEN, WSL, and so on.
Computing Environments
- Traditional Computing
- Mobile Computing
- Client-Server Computing
- Peer-to-Peer Computing
- Cloud Computing
- Real-Time Embedded Systems
User and Operating System Interface
- CLI: command line interface, or command interpreter
knownas shells:sh,bash,csh,tcsh,zsh,etc.
- GUI: graphical user interface
Windows, Aqua for MacOS, KDE/GNOME for Linux, etc.
- Touch-Screen Interface
Android UI, iPhone UI, etc.
사용자가 인터페이스 하는 방법이고
system call
컴퓨터 응용 프로그램이 os와 인터페이스 하는 방법은 시스템콜이다.