[OS] 프로세스의 계층 구조와 종류
1. init: 모든 프로세스의 조상 유닉스의 모든 프로세스는 init 프로세스의 자식이 되어 트리 구조를 이룬다. Windows는 이렇게까진 아니지만 거의 비슷함 부모-자식 프로세스 관계를 운영체제별로 확인해보자. 예시: 리눅스의 프로세스 목록 pstree -p 명령어로 확인 가능 리눅스에서의 프로세스 목록 ...
1. init: 모든 프로세스의 조상 유닉스의 모든 프로세스는 init 프로세스의 자식이 되어 트리 구조를 이룬다. Windows는 이렇게까진 아니지만 거의 비슷함 부모-자식 프로세스 관계를 운영체제별로 확인해보자. 예시: 리눅스의 프로세스 목록 pstree -p 명령어로 확인 가능 리눅스에서의 프로세스 목록 ...
1. 프로세스의 생성 1.1. 프로세스가 생성되는 경우 시스템 부팅 과정에서 필요한 프로세스 생성 사용자 로그인 후 사용자 제어(대화) 위한 프로세스 생성 bash explorer.exe finder.app 등 새 프로세스 생성하는 사용자 명령 (ex: vi hello.c) 배...
1. 주소 공간 1.1. CPU address space 물리 메모리 (주소) 라고도 한다. CPU Bus 크기1에 의해 결정된다. 32 bit CPU → 주소선 32개 → $2^{32}$ → 4GB 64 bit CPU → 주소선 64개 → $2^{64}$ → 16EB(=2,305,843.01TB) ...
1. 실행파일과 프로세스 1.1. 실행파일 실행파일이란 OS가 프로세스를 초기 구동하는 데 사용되는 파일로, Program 이라고 한다. 저장장치에 저장되어 있는 정적인 상태 Windows: .exe Linux, macOS: 확장자는 따로 없지만 ELF(Executable & Linkable Format...
1. 병렬 처리 병렬 처리란 동시에 여러 개의 명령을 처리해 작업의 능률을 올리는 방식을 말한다. 1.1. Concurrency vs Parallelism 동시성 Concurrency 병렬성 Parallelism 동시에 실행되는 것 같이 보이는 것 실제로 동시...
1. CPU 1.1. CPU 구성 요소 산술논리 연산장치(ALU, Arithmeti Logic Unit) 데이터의 산술 연산 및 AND, OR 같은 논리 연산 수행 제어장치 (Control Unit) CPU에서 명령어에 따른 작업 지시 레지스터 (Register) ...
운영체제를 본격적으로 공부하기 위해서는 컴퓨터 아키텍쳐(컴퓨터 구조)를 잘 알아야 하며, 이 게시글에서는 컴퓨터의 하드웨어적 내용을 요약한다. 1. 컴퓨터의 계층 구조 응용 프로그램 ↔ 운영체제 ↔ 하드웨어 사용자는 응용프로그램 통해 컴퓨터 활용 응용프로그램은 하드웨어 직접 접근 X ...
1. 운영체제의 구조 운영체제는 크게 나누어 2(+1) 구조로 볼 수 있다. 1.1. 커널(Kernel) 운영체제의 핵심 좁은 의미의 OS OS 핵심 기능(프로세스 / 메모리 / 저장장치 관리 등)의 집합 응용 SW는 HW 자원 이용하기 위해 커널에 요청해야 함 1.2. 인터페이스(Interface) 커널에 명령 전...
1. 운영체제란? 운영체제(OS, Operating System)란 조직되어 통일된 전체(System)을 관리/운용해 나간다(Operating)는 의미로, 하드웨어(HW, Hardware)를 소프트웨어(SW, Software)로 추상화(Abstraction)1한 소프트웨어이다. 1.1. OS의 핵심 기능 프로세스 관리 메모리 관리 입...
이 포스팅은 이전 네이버 블로그의 해당 게시물에서 마이그레이션되었다. 이번에 제가 직접 개발한 프로그램인 비트레이트 계산기(Bitrate Calculator)를 소개해볼까 합니다. 비트레이트가 뭘까요? 비트레이트는 단위 시간동안 처리되는 비트(Bit)를 말합니다. 비트레이트를 계산해서 뭐하냐구요? 사실 이 프로그램은 더 정확하게 말하면 ‘영상 비트...