운영체제
-
[OS] 프로세스 메모리 구조 (코드, 데이터, 스텍, 힙)OS 2021. 7. 19. 07:57
프로세스 메모리 구조 (코드, 데이터, 스텍, 힙) 프로그램의 실행 프로그램의 실행은 두가지 중요한 의미를 가진다. 파일 시스템에 존재하던 실행파일이 메모리에 적재된다는 의미 프로그램이 CPU를 할당받고 명령을 수행하고 있는 상태 파일 시스템에 있는 실행 파일이 메모리에 적재될 때, 실행파일 전체가 메모리에 올라가지 않는다. 일부분만 메모리에 올라가고 나머지는 디스크의 특정영역인 스왑 영역에 존재한다. 프로세스 메모리 영역 프로세스의 주소 공간은 코드(code), 데이터(data), 스택(stack), 힙(heap) 영역으로 구성된다. 이러한 주소 공간을 우리는 가상 메모리 (또는 논리적 메모리: logical memory)라고 부른다. code 영역 사용자가 작성한 프로그램 함수들의 코드가 CPU에서 ..
-
[OS] 인터럽트(Interrupt)OS 2021. 7. 18. 20:02
인터럽트(Interrupt) 인터럽트(Interrupt) 인터럽트란? 마이크로프로세서(CPU)가 프로그램을 실행하고 있을 때, 입출력 하드웨어 등의 장치에 예외상황이 발생하여 처리가 필요할 경우에 마이크로프로세서에게 알려 처리할 수 있도록 하는 것을 말한다. 현대의 운영체제는 인터럽트에 의해 구동된다고 할 수 있다. 인터럽트 당한 시점의 레지스터와 PC(Program Counter)를 저장한 후 CPU의 제어를 인터럽트 처리 루틴에 넘긴다. 넓은 의미의 interrupt 인터럽트는 크게 하드웨어 인터럽트와 소프트웨어 인터럽트로 나눌 수 있다. 하드웨어 인터럽트는 키보드 마우스와 같은 하드웨어가 발생시킨 인터럽트를 말한다. 소프트웨어 인터럽트는 프로그램이 오류를 범하여 Exception이 발생하거나 사용자..
-
[OS] 컴퓨터 시스템의 동작 원리OS 2021. 7. 17. 16:44
컴퓨터 시스템의 동작 원리 컴퓨터 시스템 구조 1. CPU 중앙처리장치라 불리는 CPU는 인간의 두뇌와 같은 역할을 합니다. 중앙처리장치(central processing unit) 라는 말 그대로 중앙에서 사용자가 입력한 명령어를 해석하고 연산한 후 그 결과를 알려준다. 2. 메모리 랜덤 액세스 메모리(Random Access Memory) 즉, 램(RAM)은 임의의 영역에 접근하여 읽고 쓰기가 가능한 주기억 장치다. RAM은 어느 위치에 저장된 데이터든지 접근(읽기 및 쓰기)하는 데 동일한 시간이 걸리는 메모리이기에 ‘랜덤(Random, 무작위)’이라는 명칭이 주어진다. 3. Device Controller I/O device controller 해당 I/O 장치 유형을 관리하는 일종의 작은 CPU ..
-
[OS] 운영체제OS 2021. 7. 15. 23:49
운영체제란? 운영체제의 정의 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층을 말합니다. 운영체제의 기능 1. 자원을 효율적으로 관리 ▷ 효율성: 효율적이나 일부가 지나치게 희생되지 않도록 ▷ 형평성: 프로그램들 간의 자원을 형평성 있게 분배 ▷ 보안 및 보호 2. 사용자 및 운영체제 자신의 보호 3. 프로세스, 파일, 메시지 등을 관리 4. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 운영체제의 분류 동시 작업 가능 여부에 따라 분류 ▷ 단일작업(single tasking) ▷ 다중작업(multi tasking) ✓pick 사용자 수에 따른 분류 ▷ 단일 사용자 ▷ 다중 사용자 ✓pick 처리방식 ▷ 일괄처리 방식(batch processing..