OS(운영체제) 작동방식

김두현·2022년 11월 13일
1

Backend Curriculum

목록 보기
8/16
post-thumbnail

Goal

  • OS의 개념과 기능에 따른 목적을 이해한다.
  • OS의 구성을 파악한다.
    • 커널
      • System Call
      • 드라이버
    • 인터페이스
  • OS의 작동 방식을 이해한다.

OS(Operating System)

  • OS : 컴퓨터 사용자와 컴퓨터 하드웨어 사이의 인터페이스
    • 하드웨어를 관리하며, 각종 소프트웨어가 작동할 수 있는 환경을 제공한다.

OS 기능 및 목적


  1. 사용자가 컴퓨터를 편하게 이용할 수 있도록 한다.
    • 키보드/마우스 등의 하드웨어 인터페이스, GUI 제공
  2. 컴퓨터의 자원이 효율적으로 사용되게 한다.
    • Process Management : 컴퓨터 작업 관리
    • Memory Management
    • Storage Management
    • Protection and Security
  • 이러한 기능을 통해, OS는 다음과같은 목적을 이룬다.
    • 처리 능력 향상
    • 응답 시간 단축
    • 신뢰도 향상
    • 사용 가능도 향상

OS 구조

  • 운영체제는 커널인터페이스로 이루어져 있다.

  • 커널 : 위에서 설명한 핵심적인 기능들을 담당한다.
    • System Call : 시스템의 안전을 위해, 자원에 직접적인 접근을 차단하고 사용자의 요청을 받아 처리한다.
    • 드라이버 : 커널과 하드웨어의 인터페이스를 제공한다.

  • 인터페이스 : 사용자의 요청을 커널에 전달하고, 사용자에게 응답을 보여준다.

OS 작동 방식

  • 일괄처리 방식 : 작업을 한 번에 하나씩 순서대로 처리한다.

  • Multi-Programming 방식 : 여러 작업을 메모리에 올려놓고, CPU를 나누어 사용한다.

  • Time-Sharing 방식 : 여러 명의 사용자가 CPU를 돌아가면서 사용한다.

  • Multi-Processing 방식 : 여러 개의 CPU를 사용하여 여러 작업이 동시에 진행된다.

  • Real-Time 방식 : 데이터를 짧은 시간 안에 처리하여 응답한다.

  • 분산 처리 방식 : 각 시스템이 각자의 OS를 가져 독립적으로 운영하고, 필요할 때 통신한다.

✨오늘 내용은 여기까지✨


커리큘럼 남은 일정

인터넷

  • 인터넷 작동 원리
  • HTTP란?
  • 브라우저 동작 원리
  • DNS 작동 원리
  • 도메인 네임이란?
  • 호스팅이란?

    기본적인 프론트엔드 지식
  • HTML
  • CSS
  • JavaScript

    OS 및 일반적인 지식
  • 터미널 사용방법
  • OS 작동 방식
  • 프로세스 관리
  • 스레드와 동시성
  • 기본적인 터미널 명령어
  • 메모리 관리
  • 프로세스간 통신 (IPC)
  • 입출력 관리
  • POSIX 기초
  • 기본적인 네트워크 개념

    버전 관리
  • Git 기본 사용법

    DataBase
  • PostgreSQL (변경 가능성 있음)
  • MongoDB

    DataBase 상세 정보
  • ORM
  • ACID
  • Transaction
  • N + 1 Problem
  • DataBase 정규화
  • Index와 작동 방식

    API
  • 인증
  • REST
  • JSON APIs

    캐싱
  • CDN
  • Server side
  • Client side

    웹 보안 지식
  • MD5, SHA family, scyrpt, bcrypt
  • HTTPS, CORS, SSL/TL, 보안 정책

    Testing
  • 통합 테스트
  • 단위 테스트
  • 기능 테스트

  • CI/CD

    개발과 설계 원칙
  • SOLID
  • KISS
  • YAGNI
  • DRY

    아키텍처 패턴
  • 모놀로틱 앱
  • 마이크로서비스
  • SQA
  • Serverless

    검색 엔진
  • ElasticSearch

    메세지 브로커
  • RabbitMQ, Kafka

    컨테이너화 vs 가상화
  • Docker

    GraphQL
  • Apollo

  • 웹 소켓

  • 웹 서버

    확장성
  • 측정, 모니터링, 원격측정
  • 마이그레이션 전략
  • 수평적 확장 vs 수직적 확장
  • 관찰 가능성을 고려한 확장

참고 자료

OS의 기본적인 작동 방식
OS 유형
OS 구조


💕오류 지적 및 피드백은 언제든 환영입니다. 복제시 출처 남겨주세요!💕
💕좋아요와 댓글은 큰 힘이 됩니다.💕
profile
I AM WHO I AM

0개의 댓글