본문 바로가기

Computer Science

(35)
반효경 운영체제 - 1. 시스템 구조와 프로그램 실행 컴퓨터 시스템 구조 Computer CPU 매 클럭 마다 메모리에서 인스트럭션을 하나씩 읽어서 수행 registers : 메모리보다 빠른 정보를 저장할 수 있는 공간 mode bit interrupt line : CPU는 메모리와만 상호작용함. 인스트럭션 실행 완료 후 interrupt line을 확인한다. Memory I/O device와 상호작용이 필요할 때, 프로그램은 권한을 OS에게 반환한다. 사용자 프로그램은 I/O 장치에 직접 접근 불가하므로 운영체제를 통해서만 요청을 수행할 수 있다. I/O 컨트롤러가 요청이 완료되었음을 확인하고 CPU에게 인터럽트를 발생시킨다. 입력된 buffer 메모리를 프로그램 메모리 공간에 copy한다. Timer OS가 cpu를 점유하다가, 사용자 프로그램에 타이머..
반효경 운영체제 - 0. 운영체제란? 운영체제의 정의 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제 (커널) : 운영체제의 핵심 부분으로 메모리에 상주하는 부분 광의의 운영체제 : 커널을 포함한 주변 시스템 유틸리티를 포함한 개념(ex, 파일 탐색기 등) 운영 체제의 목적 User 측면 : 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공. 운영체제는 동시 사용자/프로그램들이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상을 제공함. 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행. Hardware 측면 : 컴퓨터 시스템의 자원을 효율적으로 관리 프로세서, 기억장치, 입출력 장치 등을 효율적으로 관리 실행 중인 프로그램에게 짧은 시간 씩 CPU를 번갈아 할당 실행 중..
덧셈과 가산기(Adder), 컴퓨터의 사칙 연산 원리 (Java) 사칙 연산 없이 논리 게이트만으로 이진수(비트)의 덧셈을 구현해보겠습니다. 사칙연산 - 덧셈으로부터 컴퓨터의 사칙 연산은 덧셈에서부터 이루어집니다. 우리 컴퓨터가 덧셈은 할 줄 안다고 가정하면, 1. 뺄셈은 보수를 취한 덧셈으로 계산할 수 있습니다.(부호를 나타내는 최상위 비트) 2. 곱셈은 곱하는 수만큼의 덧셈을 반복이며, 이 경우 더한 수를 세주는 계수기(counter)와 가산기가 필요합니다. 3. 나눗셈은 몫이 [1]보다 작아질 때까지 나누어지는 수에서 나누는 수를 계속 빼면서 계수기로 횟수를 세면 됩니다. 그러나 위의 곱셈과 나눗셈은 간단한 수일 경우 문제가 없겠지만 long 단위의 수를 다루게 된다면, 계산 횟수가 기하급수적으로 늘어난다는 문제가 있습니다. 곱셈의 경우, 이진수의 계산이라는 가정..