운영체제

운영체제 Week 1-2 :

만능성구 2020. 9. 27. 23:28
728x90

Interrupt Handling

  • 운영 체제는 레지스터와 프로그램 카운터를 저장하여 CPU 상태를 보존합니다.
  • 발생한 인터럽트 유형을 결정합니다.
    • polling
    • vectored 인터럽트 시스템
  • 별도의 코드 세그먼트는 각 인터럽트 유형에 대해 수행해야하는 작업을 결정합니다.

Interrupt-drive I/O Cycle

Two I/O Structures

  • I/O 시작 후, I/O 완료시에만 사용자 프로그램으로 제어 복귀
    • 대기 명령은 다음 인터럽트까지 CPU를 idles 상태로 만듭니다.
    • Wait loop(메모리 액세스에 대한 경합)
    • 한 번에 최대 하나의 I/O 요청이 처리되지 않고 동시 I/O 처리 없음
  • I/O 시작 후, I/O 완료를 기다리지 않고 제어가 사용자 프로그램으로 복귀합니다.
    • System call – 사용자가 I / O 완료를 기다릴 수 있도록 OS에 요청
    • Device-status table에는 유형, 주소 및 상태를 나타내는 각 I/O 장치에 대한 항목이 포함됩니다.
    • OS는 I/O 장치 테이블에 index를 생성하여 장치 상태를 결정하고 interrupt를 포함하도록 테이블 항목을 수정합니다.

Storage Structure

  • 메인 메모리 – CPU가 직접 액세스 할 수있는 대용량 저장 매체
    • 랜덤 액세스
    • 일반적으로 휘발성
    • 일반적으로 DRAM (Dynamic Random-Access Memory) 형태
  • Secondary storage – 큰 비 휘발성 스토리지 용량을 제공하는 메인 메모리 확장
    • Hard Disk Drives (HDD) – magnetic recording 물질로 덮인 단단한 금속 또는 유리 platters
      • disk 표면은 논리적으로 track으로 분할되고 sectors로 세분됩니다.
      • disk controller는 장치와 컴퓨터 간의 논리적 상호 작용을 결정합니다.
    • Non-volatile memory (NVM) 장치 – HDD보다 빠름
      • 다양한 기술
      • 용량과 성능이 증가하고 가격이 하락함에 따라 인기가 높아짐

Storage Definitions and Notation Review

  • bit : 컴퓨터 저장의 기본 단위
    • 0과 1의 두 값 중 하나를 포함 할 수 있습니다.
  • byte : 8 bits, 가장 작은 편리한 stroge chunk
    • 예) bit를 이동하라는 명령은 없지만 byte를 이동하라는 명령.
  • Word : 주어진 컴퓨터 아키텍처의 기본 데이터 단위
    • 1 byte 이상 : 64 bits 아키텍처 컴퓨터에는 64 bits (8 bytes) word가 있습니다.
    • 한 번에 한 byte가 아닌 고유 한 word 크기의 많은 작업.
  • 대부분의 컴퓨터 throughput과 함께 컴퓨터 stroge는 일반적으로 byte 및 bytes 모음 단위로 측정 및 조작됩니다.
    • milli-3 micro-6 nano -9
    • kilo 바이트 (KB) : 1,024 bytes
    • mega 바이트 (MB) : 1,024^2 bytes
    • giga 바이트 (GB) : 1,024^3 bytes
    • tera 바이트 (TB) : 1,024^4 bytes
    • peta 바이트 (PB) : 1,024^5 bytes
  • 종종이 숫자를 반올림하고 mega byte는 1 million byte이고 1 giga byte는 10 billion bytes라고 말합니다.
  • 네트워킹 측정은이 일반 규칙의 예외입니다. (네트워크가 한 번에 조금씩 데이터를 이동하기 때문에) bit 단위로 제공됩니다.

Storage Hierarchy

  • 계층 구조로 구성된 스토리지 시스템
    • 속도 speed, 비용 cost, 변동성 volatility
  • Caching – 정보를 더 빠른 storage system으로 복사합니다. main memory는 secondary stroage의 cache로 볼 수 있다.

  • Start up
    • power-up 또는 reboot시 bootstrap program이 load 됨
      • 일반적으로 ROM 또는 EPROM에 저장 (일반적으로 firmware라고 함)
      • 시스템의 모든 측면을 초기화합니다.
      • 운영 체제 kernel을 load하고 실행을 시작합니다.
  • Working

Direct Memory Access Structure

  • Memory 속도에 가까운 정보를 전송할 수있는 고속 I/O 장치에 사용
  • 장치 controller는 CPU 개입없이 data block을 buffer storage에서 Main memory로 직접 전송합니다.
  • byte 당 하나의 interrupt가 아니라 block 당 하나의 interrupt만 생성된다.

Computer-System Architecutre

  • 대부분의 시스템은 단일 general-purpose의 processor를 사용합니다.
    • 대부분의 시스템에는 special-purpose의 processor도 있습니다.
  • Multiprocessors systems 사용 및 중요성 증가
    • 병렬 시스템, 단단히 결합 된 시스템이라고도 함
    • 장점은 다음과 같습니다.
      • throughput 증가
      • 규모의 경제 
      • 신뢰성 향상 – 정상적인 성능 저하 graceful degradation 또는 내결함성 fault tolerance

성능을 높이는 것은 clock을 높이는 것이다. 속도 한계 내에서 최대치를 끌어올리는 것.--> 다중 처리

  • 두 가지 유형 :
    • 비대칭 Asymmetric Multiprocessing – 각 processor에 특정 작업이 할당됩니다.
    • 대칭 Symmetric Multiprocessing – 각 processor가 모든 작업을 수행합니다.

NUMA- 네트워크로 연결되어 있어서 속도가 다 똑같지 않다.

Clustered Systems

다중 프로세서 시스템과 유사하지만 함께 작동하는 여러 시스템

  • 일반적으로 SAN (Storage Area Network)을 통해 storage 공유
  • failures에서 살아남아 high-availability service 제공
    • Asymmetirc clustering에는 상시 대기 모드 hot-standby mode의 시스템이 하나 있습니다.
    • Symmetirc clustering에는 애플리케이션을 실행하는 여러 노드가 있으며 서로 모니터링합니다.
  • 일부 clusters는 high-performance computing (HPC)용입니다.
    • 병렬화를 사용하려면 응용 프로그램을 작성해야합니다.
  • 일부는 작업 충돌을 피하기 위해 분산 잠금 관리자 distributed lock manger (DLM)를 사용합니다.

컴퓨터들 끼리 연결

 

728x90