본문 바로가기

Computer Science/Operating System3

인터럽트(Interrupt) 인터럽트란? 프로그램을 실행하는 도중에 예기치 않은 상황이 발생할 경우 현재 실행 중인 작업을 즉시 중단하고, 발생된 상황을 우선 처리한 후 실행중이던 작업으로 복귀하여 계속 처리하는 것이다. 지금 수행 중인 일보다 더 중요한 일(입출력, 우산순위연산 등)이 발생하면 그 일을 먼저 처리하고 나서 하던 일을 계속해야 한다. 외부 인터럽트 → CPU의 하드웨어 신호에 의해 발생 입출력 장치, 타이밍 장치, 전원 등 외부적 요인으로 발생 ex. 전원 이상, 기계 착오, 외부 신호, 입출력 내부 인터럽트 → CPU의 하드웨어 신호에 의해 발생 Trap이라고 부르며, 잘못된 명령이나 데이터를 사용할 때 발생 ex. 0으로 나누기 발생, 오버플로우, 명령어 잘못 사용(exception) 소프트웨어 인터럽트 → 명령.. 2020. 9. 17.
프로세스 & 스레드 (Process & Thread) 프로세스 : 프로그램을 메모리 상에서 실행중인 작업 스레드 : 프로세스 안에서 실행되는 여러 흐름 단위 프로세스 Process 기본적으로 프로세스마다 최소 1개의 스레드 소유한다. (메인 스레드 포함) 프로그램이 CPU에 의해 실행 → 프로세스가 생성, 메모리에 프로세스 주소 공간이 할당된다. (프로세스는 각각 별도의 주소공간을 독립적으로 할당한다.) Code Segment : 프로그램 명령/코드 자체를 구성하는 메모리 영역이다. Data Segment : 초기화된 데이터/전역변수, 정적변수, 배열 등 Heap Segment : 동적 할당 시 사용된다. (new(), mallock() 등) Stack Segment : 임시 메모리 영역/함수, 지역 변수, 매개 변수, 리턴 값 왜 구역을 나눌까? 최대한 .. 2020. 9. 5.
운영체제(Operating System)란? - 응용 프로그램과 하드웨어 사이에서 인터페이스 역할을 하며 컴퓨터 하드웨어를 관리한다. - 운영체제는 시스템의 자원과 동작을 관리하는 시스템 소프트웨어의 일종이다. - 좁은 의미 : 컴퓨터 전원을 켠 뒤 부팅이 일어난 이후로 항상 메모리에 상주하는 부분 = 커널 = 운영체제 - 넓은 의미 : 커널을 포함해 주변 시스템을 다루는 유틸리티 운영체제의 종류 Windows 98, Windows10, UNIX, LINUX, MS-DOS 등이 있다. 단일 작업 처리 시스템에는 DOS, 다중 작업 처리 시스템에는 WINDOWS, UNIX, LINUX 등이 사용된다. 주로 WINDOWS는 개인용, UNIX, LINUX는 서버용 운영체제로 사용된다. 운영체제의 목적 처리능력(Throughput) 향상 일정 시간 내에 .. 2020. 9. 3.