반응형

프로그래밍 기술/정보처리기사필기 100

[운영체제] 주기억장치

주기억장치 이번에는 정보처리기사 필기 과목인 운영체제의 주기억장치를 살펴보아요. 주기억장치 (RAM과 ROM) 주기억장치 할당 기법 프로그램이나 데이터를 주기억장치에 할당하는 기법을 말합니다. 연속 로딩 기법(단일 분할 할당, 다중 분할 할당)과 분산 로딩 기법(페이징, 세그먼테이션)으로 나눌 수 있습니다. 단일 분할 할당 한 순간에 하나만 주기억장치의 USER 영역을 사용하는 기법 초기 운영체제에서 사용하던 기법으로 가장 단순한 방법입니다. 운영체제가 사용하는 KERNEL 영역과 해당 프로세스의 USER영역을 구분하는 경계(Boundary) 레지스터를 사용합니다. 오베레이 기법과 스와핑 기법을 사용합니다. 오버레이(Overlay) 프로그램의 메모리가 주기억장치보다 클 때의 문제를 해결하기 위한 기법 하..

[운영체제] 기억장치

기억장치 이번에는 정보처리기사 필기 과목인 운영체제의 기억장치를 알아보아요. 기억장치 메모리 종류 특수 기억장치: 레지스터, 캐시 메모리, 주기억장치, 보조기억장치 메모리 속도 레지스터 → 캐시 → 주기억 장치 → 보조기억 장치 Access Time 기억 장치에 읽기 요청에서 자료를 꺼내서 사용 가능할 수 있을 때까지의 시간 Access Time = Seek Time(탐색 시간) + Latency Time(회전 지연 시간) + Transmission Time(전송 시간) 전체 시간 중에 Seek Time이 제일 오래 걸립니다. Cycle Time 기억 장치에 읽기 신호와 다음 읽기 신호 사이의 간격 Cycle Time ≥ Access Time 대역폭 1초 동안 전송하는 최대 자료량 너와 나의 연결고리 "..

[운영체제] 병행 프로세스에서 고려사항

병행 프로세스에서 고려사항 이번에는 정보처리기사 필기 과목인 운영체제의 병행 프로세스에서 고려 사항을 살펴보아요. 병행 프로세스 여러 프로세스가 동시에 동작하는 상태를 말합니다. 두 개의 프로세스가 경쟁하여 자원을 사용할 때 여러가지 문제가 발생할 수 있습니다. 경쟁 상태에 있을 때 임계 영역에 서로 들어가는 것을 방지하여야 합니다. 경쟁 자원 두 개 이상의 작업이 경쟁하여 사용하는 자원 경쟁 상태(Race Condition) 두 개 이상의 작업이 경쟁 자원을 사용하려는 상태 임계 영역(Critical Section) 경쟁 자원을 사용하는 영역 상호 배제(Mutual Exclusion) 두 개 이상의 작업이 동시에 임계 영역에 들어가지 못하게 하는 기법 세마포어(Semaphore) 여러 개의 프로세스의 ..

[운영체제] 스케쥴링

스케쥴링 이번에는 정보처리기사 필기 과목인 운영체제의 스케쥴링에 관해 알아보기로 해요. 스케쥴링 어느 작업이 CPU를 사용할 것인지 결정하는 작업 문맥 교환(Context Switching) 작업을 통해 프로세스는 이전에 수행했던 상태에서 수행할 수 있습니다. 좋은 스케쥴링 CPU 사용 효율이 높게 스케쥴링합닌다. 우선 순위가 높은 프로세스를 먼저 수행하고 처리합니다. 문맥 교환에 들어가는 오버헤드를 최소화합니다. 작업을 요청하였을 때 반응하는 데 걸리는 응답 시간(Response Time)을 최소화합니다. 프로세스를 시작하여 실행을 완료하는 데 걸리는 반환 시간(Trun Around Time)을 최소화합니다. 무한정 대기하는 작업이 발생하지 않게 합니다. 비선점형(Non Preemptive) 스케쥴링 ..

[운영체제] 프로세스

프로세스 이번에는 정보처리기사 필기 과목인 운영체제의 프로세스를 알아보아요. 프로세스 "동작 중인 프로그램" 프로시저의 활동 운영체제가 관리하는 실행 단위 비동기적 행위를 일으키는 주체 PCB의 존재로서 명시되는 것 프로세스 상태 프로세스 상태 IDLE: 프로그램을 수행하지 않는 상태(프로세스가 아님) READY: 대기 상태, 스케쥴러에 의해 자신의 순서를 대기하고 있는 상태 스케쥴러에 의해 자신의 순서가 오면 Disptch하여 RUN 상태로 전이 RUN: 실행 상태 CPU를 사용 중인 상태, CPU 사용이 끝나면 READY 상태로 전이 비정상적인 작업으로 SUSPENDED 상태로 전이 모든 작업이 끝나면 IDLE 상태로 전이 입출력 요청이 오면 BLOCK 상태로 전이 BLOCK: 요청한 입출력 수행 완..

[운영체제] 프로그램

프로그램 이번에는 정보처리기사 필기 과목인 운영체제의 프로그램에 관해 알아보아요. 프로그램 컴퓨터가 수행할 수 있는 논리의 집합 프로그래밍 언어로 작성하며 컴파일러와 인터프리터, 어셈블러로 번역합니다. 저급언어 기계어와 어셈블리어로 구분합니다. 기계어는 컴퓨터가 이해할 수 있는 언어이며 어셈블리어는 기계어와 1:1 대응하여 니모닉(Mnemonic)언어라고 부릅니다. 고급언어 인간이 사용하는 자연어와 비슷한 형태 및 구조를 갖습니다. 컴파일러나 인터프리터로 번역합니다. 컴파일러 고급 언어로 작성한 원시 프로그램을 소스 코드 단위로 목적 프로그램으로 번역 한 번 번역하면 다시 번역할 필요가 없어서 실행 속도가 빠릅니다. *컴파일러가 번역한 목적 프로그램은 링커에 의해 실행 프로그램을 생성합니다. 인터프리터 ..

[운영체제] 운영기법

운영기법 이번에는 정보처리기사 필기 과목인 운영체제의 운영 기법을 살펴보기로 해요. 일괄처리(Batch Processing) 일정 기간이나 일정 량의 데이터를 모아 한꺼번에 처리(급여 계산, 연말 정산 등에 적합) 효율이 높고 시스템 자원을 독점하여 CPU 유휴 시간이 줄어든다. 처리량이 많아 반환 시간(Turn Around Time)이 늦다. 일괄처리에 사용하는 작업 제어 언어(Job Control Language)가 필요하다. 1세대 시분할(Time Sharing) 특정 작업 시간(TIme Slice, Quantum)동안 CPU를 사용한 후에 다시 대기하고 대기큐에 있는 작업을 꺼내와서 다시 CPU를 사용하는 것을 반복 라운드 로빈(Round Robin)방식으로 부른다. 사용자 입장에서는 여러 개의 ..

[운영체제] 운영체제

운영체제 이번에는 정보처리기사 필기 과목인 운영체제의 기본적인 개념을 살펴보기로 해요. 운영체제(OS, Operating System) 컴퓨터 시스템을 관리하는 시스템 소프트웨어 컴퓨터의 CPU, 메모리 및 주변 장치를 관리하여 응용 프로그램이 동작할 수 있는 환경을 제공합니다. 시스템 소프트웨어 응용 소프트웨어를 실행하기 위한 환경을 제공하고 컴퓨터 시스템이 동작시키는 소프트웨어입니다. 운영체제, 장치 드라이버, 컴파일러, 어셈블러, 링커, 라이브러리 등이 있습니다. 시스템 소프트웨어의 종류 시스템 소프트웨어는 시스템을 제어하는 역할과 응용 프로그램의 요청을 처리하는 기능을 수행합니다. 제어 시스템(Control System) 시스템의 동작을 감시, 감독하는 작업과 작업을 처리하고 자료를 관리하는 시스..

[계산기 구조] 가상 메모리(Virtual Memory)

가상 메모리(Virtual Memory) 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 가상 메모리를 알아보아요. 가상 메모리 가상메모리 기법 프로그램의 메모리 주소를 실제 물리 메모리 주소가 아닌 논리 메모리 주소를 부여하는 것을 말합니다. 주기억 장치의 용량이 부족할 때 보조기억 장치를 사용할 수 있게 하는 것이 목적입니다. MMU(Memory Management Unit)에 의해 프로그램의 논리 메모리 주소를 물리 메모리 주소로 변환합니다. 논리주소를 물리주소로 변환하는 것을 매핑이라고 부릅니다. 논리주소: 페이지번호(p) 와 변위(d)로 구성 물리주소: 페이지 프레임(p')과 변위(d)로 구성 페이지 맵 테이블: 디스크 페이지 번호와 페이지 프레임 번호, 상태 비트(주기억 장치에 존재 여부)..

[계산기 구조] 보조기억 장치

보조기억 장치 이번에는 정보처리기사 필기 과목인 전자계산기 구조의 보조기억 장치를 알아보아요. 보조기억 장치 자기 테이프(Magnetic Tape) 순차적으로 읽거나 쓰기만 가능하며 랜덤 액세스할 수 없습니다. 블록 단위로 자료를 읽거나 쓸 수 있고 블록 사이에 GAP이 있습니다. 블록 팩터는 1블록에 들어갈 수 있는 자료를 말합니다. 블록 팩터 = 레코드 크기/블록 크기 자기 디스크(Magnetic Disk) 순차적 접근과 랜덤 액세스가 모두 가능하여 DASD(Direct Access Storage Device)라고 말합니다. 디스크가 여러 개로 구성할 수 있으며 디스크는 여러 개의 트랙이 있고 트랙에는 섹터가 있습니다. 서로 다른 디스크의 같은 위치의 트랙들을 실린더라 부릅니다. 자료를 찾기 위해 트..

반응형