운영체제 운영체제는 시스템 소프트웨어로써 컴퓨터 하드웨어와 소프트웨어 리소스를 관리한다. 운영체제의 역할은? 하드웨어를 위한 역할과 사용자를 위한 역할 크게 두 가지로 나눌 수 있다. 시스템의 자원을 효율적으로 관리 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공

운영체제 중 항상 메모리에 올라가 있는 부분, 운영체제의 핵심적인 부분이라고도 할 수 있다.핵심적인 역할에는 어떤게 있을까프로세스 관리, 메모리 관리, 입출력 관리, 파일 시스템 관리운영체제가 해야 할 일들을 미리 프로그래밍하여 포함시켜 둠 ex) 인터럽트 처리루틴시스

입출력 구조 입출력(I/O)란 컴퓨터 시스템이 컴퓨터 외부의 입출력 장치들과 데이터를 주고받는 것을 말함 입출력 방식은 두가지로 나뉨 동기식 입출력 어떤 입출력 작업이 완료된 후에야 그 프로그램이 후속 작업을 수행함 시나리오 입출력이 완료되기까지
프로그램이란? 컴퓨터에서 어떤 작업을 위해 실행할 수 있는 정적인 상태의 파일 컴퓨터 프로그램에서 내부 구조는 함수들로 구성되어있다. 이 때 명령을 담은 프로그램 주소 영역은 크게 code, data, stack 영역으로 구분됨 프로그램이 컴퓨터 메모리상에 올라간 상
멀티 프로세스란? 두개 이상 다수의 프로세서가 협력적으로 하나 이상의 작업을 동시에 처리하는 것이다. (병렬처리) 각 프로세스 간 메모리 구분이 필요하거나 독립된 주소 공간을 가져야 할 경우 사용한다. 프로세스 수행상태 변화 프로세스끼리 협력하는 방법 fork()
CPU 바운드 프로세스 : CPU 버스트가 빈번하게 나타나는 프로세스CPU 버스트란? : 사용자 프로그램이 CPU를 직접 가지고 빠른 명령을 수행하는 일련의 단계IO 바운드 프로세스 : IO 버스트가 빈번해 CPU 버스트가 매우 짧은 프로세스I/O 버스트란? : I/O

동시성, 병렬성 동시성 Task들이 빠르게 전환되어 실행되면서 동시에 실행되는 것처럼 보이는 것 유휴상태를 최소화 하는데에 목적이 있다. 싱글코어, 멀티코어 모두에 해당하는 개념 동기화 문제가 나타날 수 있다. Race Condition, Dead Lock, S