컴퓨터의 부팅을 위해서는 전원 버튼을 누를 때 실행될 초기 프로그램, 부트스트랩 프로그램(bootstrap program)이 필요하다. 부트스트랩 프로그램은 보통 운영체제 전반을 구동시킬 최소한의 명령으로 구성되어 있다. 이 프로그램은 보통 ROM(Read-Only Memory)에 저장되어 시스템 부분을 초기화한다. 컴퓨터는 대부분의 프로그램을 읽기-쓰기가 가능한 RAM(Random Access Memory)에서 실행시킨다. ROM은 읽기만 가능하기에 게임 카트리지 제작이나 부트스트랩 프로그램에서 주로 쓰이며 EEPROM(Electricaly Erasable Programmable Read-Only Memory)은 자주 수정될 수 없어서 공장초기화 프로그램과 같은 정적 프로그램을 저장하는 데에 쓰인다. ..
인터럽트(interrupt)는 운영체제의 핵심적인 기능 중 하나로, 영어단어의 뜻인 '중단하다'에서 알 수 있듯 어떤 프로그램을 실행하는 중에 다른 작업을 진행하는 기능이다. 하드웨어나 소프트웨어로 어떤 사건을 일으키면 인터럽트가 발생하게 된다. 이렇게 생긴 인터럽트는 CPU로 전달되어 인터럽트 서비스 루틴 (interrupt service routine)을 실행시킨다. 어떤 명령을 수행하는 도중에 인터럽트할 경우에는 인터럽트 서비스 루틴을 마치고 다시 명령을 수행하기 위해 인터럽트 전의 명령과 상태를 저장해야 한다. 시스템 스택에 인터럽트 전의 명령과 상태를 저장하는 기법을 주로 쓴다.
운영체제(Operating System, OS)는 사용자가 시스템을 이용할 수 있도록 하면서 시스템 자원을 관리하는 프로그램의 집합이다. 1. 시스템 자원 관리시스템 내의 자원을 효율적으로 관리하는 성질이다. 이에는 응답시간(자료 요청과 결과 도출 사이의 시간), 사용 가능도( 자원 이용의 효율성), 신뢰도(시스템의 정확도)가 포함되어 있다. 2. 사용자에게 인터페이스 제공사용자가 이용하기 쉽게 만드는 성질이다. GUI(혹은 CLI)가 이와 관련되어 있다. 때로는 운영체제의 설계에 있어서 위의 두 성질이 충돌하는 부분이 발생할 수 있다. 운영체제를 설계할 때에는 이러한 충돌을 적절히 조율하는 것이 필요하다.