[OS] CH1-5 Operating System Concepts

김우경·2020년 11월 9일
0

운영체제

목록 보기
5/12

Processes

  • 수행되는 프로그램
    → instance of a program being executed
    → 같은 program도 다른 process에 의해 수행될 수 있고, 각 process는 separated & independent

  • Linux

    ps -auwwx
    	→ 모든 process 목록

→ 정보 주고받으려면 항상 OS 거쳐야

  • 주소공간과 연관
    • 주소공간 ?
      • 프로세스가 읽고 쓸 수 있는 0~ 특정 최대값 까지의 메모리 주소
      • 실행 프로그램, 프로그램 데이터, 프로세스의 스택 포함

1. Process Management

: 다중 프로그래밍에서 프로세스 잠시 중단 다시 실행
의 과정에서 그 사이에 다른 process가 사용시 내용 다 날라감

→ 다시 시작 시 멈춘 바로 그 상태에서 시작하기 위해 CPU 상태 저장해야함
e.g. registers, stacks, ...

2. Process Operations

  • create a process, delete a process

    e.g. command interpreter / shell 이라는 프로세스가 터미널로부터 명령어
    → 사용자가 컴파일 명령 내림
    → 쉘이 컴파일러 실행 가능한 새 프로세스 만듬
    → 컴파일 후 스스로 종료하는 system call

  • suspend, resume, clone process

  • inter-process communication / synchronization
    : 연관성 있고, 협력하는 프로세스 끼리의 통신, 동기화

  • subprocess 생성 가능


Memory Management

1. RAM primary memory

: directly accessed storage for CPU

  • 프로그램이 메모리에 올라가야 실행
  • memory access 빠름

2. OS가 할 일

  • 프로그램에 memory space 할당

  • 할당한 memory 회수

  • Address space management
    : virtual memory systems

  • physical → virtual 로의 mapping through page tables

  • 각 프로세스 당 얼만큼의 memory 할당할지?

  • 언제 memory에서 process 지울지?


File System

: convenient abstraction of disks & I/Os

  • file
    : a basic long-term storage unit
    → persistent info 의 collection

  • directory
    : a special kind of file
    → 다른 파일의 이름, metadata를 포함하는 file

1. Operations

  • file, directory creation, deletion

  • manipulation of files, directories
    e.g. read, write, extend, rename, protect

  • copy, lock

  • accounting, quotas(할당)

  • indexing, search

  • file versioning

2. Mounting

: UNIX에서 CD-ROM이나 DVD의 파일 시스템 메인 트리에 연결

3. Special File

: I/O 장치가 파일처럼 보이도록

  • block special file
    : 디스크와 같이 임의접근 가능한 블록으로 구성된 장치 모델링용

  • character special file
    : 프린터, 모뎀과 같이 문자열 받아들이거나 출력하는 장치 모델용

    e.g.


I/O

  • os가 program(user, system)과 device간standard interface 제공
    : file system - disk, sockets - network, frame buffer - video

  • device driver
    : routine that interacts with specific device type
    → encapsulates device-specific knowledge
    e.g. device의 초기화? i/o의 질의? interrupt와 error의 처리?


Shell

→ command interpreter

  • a particular program that handles the interpretation of users's commands and help to manage processes

  • command interpreter가 OS의 standard part일 수도

  • UNIX
    : non-privileged process that provides an interface to user

  • MAC OS
    : no command language

→ 중요한 부분이지만 운영체제의 일부는 x

profile
Hongik CE

0개의 댓글