목록Fundamentals (11)
코학다식
Operating System chapter 1-2 (3) System Calls 시스템 콜(System Call)이란 운영체제에 의해 제공되는 서비스의 프로그래밍 인터페이스(Programming Interface)이다. 주로 함수의 모임인 라이브러리 형태로 제공되어 사용자가 호출해서 사용하도록 되어 있다. 일반적으로 high-level 언어로 작성된다. (C or C++) 대부분 직접적인 시스템 콜 사용보다는 high-level의 Application Program Interface(API)을 통한 프로그램에 의해서 접근된다. 가장 자주 쓰이는 API에는 윈도우의 Win32(64) API, 리눅스 계열의 POSIX, Java Virtual Machine의 Java API가 있다. System Call ..
Operating System chapter 1-2 (2) 스토리지 계층 스토리지 시스템은 계층적으로 정리되어 있다. (속도, 비용, 휘발성 등으로 구분될 수 있음) Caching 메인 메모리에 접근하는 데에는 시간이 소요되기 때문에, 최근 접근한 데이터를 가지고 있는 빠른 속도의 메모리를 CPU와 메인 메모리 사이에 둔다. 이것이 캐시(Cache)이다. 주로 S램을 사용한다. 스토리지 계층에 의해 같은 데이터가 여러 곳에 존재하는 등의 Consistency 문제가 발생할 수 있다. 특히 여러 사용자가 사용할 경우 이는 더 문제가 될 수 있다. 이러한 문제를 예방하기 위해 Cache management policy를 필요로 한다. 디스크에서 레지스터로의 이동 멀티태스킹(Multitasking) 환경은 가..
Operating System chapter 1-2 (1) 운영체제란 무엇일까? 운영체제란 컴퓨터의 사용자와 컴퓨터 하드웨어 사이의 중개인 역할을 하는 프로그램을 말한다. 운영체제의 정의(1) 사용자 관점 운영체제는 쉬운 사용과 수행을 위한 프로그램이다. 시스템 관점 운영체제는 자원 할당과 제어를 위한 프로그램이다. 모든 자원을 관리한다. 효율적이고 공정한 자원 사용을 위해 충돌하는 요구들 사이에서 결정을 내린다. 에러와 부적절한 컴퓨터의 사용을 예방하기 위해 프로그램의 실행을 제어한다. 운영체제의 정의(2) 보편적으로 받아들여지는 정의는 없고, "운영체제를 구매할 때 판매자가 제공하는 모든 것"이라고 생각하는 게 좋은 추정이다. (하지만 판매자마다 차이가 존재한다.) 모바일 운영체제는 핵심 커널(작은 ..