본문 바로가기

Computer Science4

[OS] 프로그램 실행 컴퓨터에서 프로그램이 어떻게 실행되는가? 프로그램은 실행파일 형태로 File System 하드디스크에 저장되어 있다. 사용자가 프로그램을 실행하면 그 실행파일이 가지는 독자적인 메모리 주소공간이 생성된다. 이후 당장 필요한 부분만 물리적 메모리에 올라가고, 당장 필요하지 않은 부분은 디스크의 swap area에 내려놓는다. 프로그램은 user mode, kernel mode를 반복하다가 메인 함수의 중괄호가 닫히는 순간 종료된다. Virtual Memory 파일을 실행하면 그 실행파일이 가지는 독자적인 메모리 주소공간이 생성 주소공간(address space) : 각 프로그램마다 만들어짐 code : CPU에서 실행할 기계어 코드 data : 프로그램에서 사용하는 자료구조, 변수 stack : 데이터를 .. 2022. 2. 19.
[OS] 컴퓨터 시스템 구조 Computer는 CPU와 Memory를 의미하며 host라고도 한다. I/O Device는 host에 붙어서 데이터를 컴퓨터 안으로 넣는 input이나, host에서 처리된 결과를 내보내는 output장치이다. 우리는 I/O Device를 통해 Computer와 소통하게 된다. CPU instruction 실행 - interrupt line체크 반복 매 clock마다 program counter가 가르키고 있는 memory주소에서 instruction(기계어)를 읽어서 실행 interrupt가 들어오면 CPU의 제어권을 운영체제에게 넘김 interrupt line : CPU에게 키보드 입력, 디스크 파일 읽기 (I/O Device)등의 활동을 전달 register : CPU내부에 있는 메모리보다 더 빠.. 2022. 2. 16.
[OS] 운영체제의 분류 운영체제의 분류 동시 작업 가능 여부, 사용자의 수, 처리 방식에 따라 운영체제를 분류할 수 있다. 동시작업 가능 여부 단일 작업(Single Tasking) 한번에 하나의 작업만 처리 예) MS-DOS 프롬프트 상에서는 한 명령의 수행을 끝내기 전에 다른 명령을 수행시킬 수 없음 다중 작업(Multi Tasking) 동시에 두 개 이상의 작업 처리 예) UNIX, MS Windows 등에서는 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행 할 수 있음 예전 운영체제에서는 한번에 하나의 작업만 처리 가능한 단일 작업만 가능했다. 하지만 스마트폰, 스마트티비 등이 다중작업을 지원해주는 범용 컴퓨터 기기로 발전하면서 지금의 운영체제들은 대부분 다중작업을 지원해주는 운영체제다. 단, 전화만 되는 .. 2022. 2. 13.
[OS] 운영체제란 운영체제(Operating System, OS)란? 운영체제란 컴퓨터의 성능과, 사용자의 편의성을 위해 자원을 할당(Resource Allocator)하고 프로그램을 제어(Control Program)하는 시스템소프트웨어다. 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 좁은 의미의 운영체제 = 커널 (Kernel) 운영체제의 핵심 부분으로 컴퓨터 전원을 킨 다음 부팅이 된 이후로 메모리에 상주하는 부분 넓은 의미의 운영체제 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제의 목표 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공 CPU를 .. 2022. 2. 12.