일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 정보처리기사 문제
- GPU
- 정보처리기사 정리
- Tensorflow GPU
- tensorflow
- DCNN
- CUDA 다운로드
- 설치
- 정보처리기사 개념
- Tensorflow 설치
- CondaValueError
- CUDA 8.0
- ubuntu 16.04
- 형변환
- cuDNN
- Anaconda tensorflow 설치 오류
- Tensorflow 버전
- prefix already exists
- CUDA 이전버전
- signal 추출
- Windows 10
- Anaconda
- 운영체제 문제
- CUDA
- 해커톤
- CUDA Toolkit
- gpu 버전
- 정보처리기사
- Tensorflow windows
- cudnn 6.0
- Today
- Total
Replay 개발자 이야기
정보처리기사 운영체제 개념 정리 본문
운영체제
- 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종
- 컴퓨터를 사용자가 편리하게 사용하고 컴퓨터 하드웨어를 효율적으로 사용할 수 있게 함
- 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 마련함
운영체제의 목적
- 사용자 인터페이스 제공
- 자원(CPU, 기억 장치, 입˙출력 장치 등) 스케줄링을 담당
- 신뢰성을 향상
- 처리 능력(Throughput) : 제시된 시간내에 얼마나 많은 일을 할 수 있는지에 대한 능력을 말함, 수치가 높은 수록 좋음
- 반환시간(Turnaround Time) : 명령을 지시한 후 그 명령을 처리하는 데까지 걸리는 시간을 말함, 수치가 낮을수록 좋음
- 사용 가능도(Availability) : 컴퓨터 시스템 내의 한정된 각종 자원을 여러 사용자가 요구할 때, 신속하고 충분히 지원해 줄 수 있는 정도를 의미함
- 신뢰도(Reliability) : 시스템이 주어진 문제를 얼마나 정확하게 해결하는 가를 나타내는 척도
다중 처리 시스템(Multi-Processing System)
- 여러 개의 CPU와 한 개의 주기억 장치로 여러 프로그램을 동시에 처리하는 시스템
언어 번역
로더(Loader)
- 목적 프로그램을 실행 가능한 파일로 변환하기 위해 주기억 장소를 할당하거나, 여러 개의 목적 프로그램을 연계 편집하여 CPU가 처리될 수 있는 프로그램으로 변환함
- 수행 순서 : 할당(Allocation) -> 연결(Linking) -> 재배치(Relocation) -> 적재(Loading)
절대로더(Absolute Loader)
- 적재 기능만 수행하는 로더
- 할당 및 연결은 프로그래머 수행, 재배치는 언어 번역 프로그램이 수행
UNIX운영체제 특징
- 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제
- 소스가 공개된 개방형 시스템
- 이식성이 높고 장치, 프로세스 간의 호환성이 높음
- 다중 사용자, 다중 작업 지원
- 통신망 관리용 운영체계로 적합
- 트리구조의 파일 시스템을 가지고 있음
UNIX 파일 시스템의 구조
- 부트 블록(Boot Block) : 부팅에 필요한 코드를 저장하고 있는 블록
- 슈퍼 블록(Super Block) : 전체 파일 시스템에 대한 정보를 저장하고 있는 블록
- I-node 블록(Index Node Block) : 각 파일에 대한 정보를 저장하고 있는 블록, 파일 소유자의 식별 번호, 파일 크기, 파일의 생성 시간, 파일의 최종 수정 시간, 파일 링크 수 등이 기록됨
- 데이터 블록(Data Block) : 실제 데이터를 저장하고 있는 블록
쉘(Shell)
- 명령어 해석기
- 사용자의 명령어를 인식하여 필요한 프로그램을 호출하고 그 명령을 수행하는 기능을 담당
- 사용자와 시스템 간의 인터페이스를 제공
파일 시스템(File System) : 보조 기업 장치의 파일을 관리하는 기술
- 파일을 생성, 변경, 제거함
- 파일에 대한 여러 가지 접근 제어 방법을 제공함
- 정보 손실이나 파괴를 방지하는 기능
- 정보를 암호화하고 해독할 수 있는 기능
파일의 구조
순차 파일(Sequential File)
- 레코드의 논리적 순서에 따라 연속된 물리적 저장 공간에 기록하는 파일 구조
- 저장 매체의 효율이 높고 다음 레코드에 대한 접근 속도가 빠름
- 검색 효율이 낮음
- 자기 테이프를 사용함
색인 순차 파일(Indexed Sequential Access File)
- 순차 파일 + 직접 파일
- 각 레코드가 레코드 키값에 따라 논리적으로 배열되는 파일 구조
- 자기 디스크에서 많이 사용됨
- 순차, 랜덤 처리가 모두 가능하고 파일 내용을 변경할 때 전체 내용을 복사/이동할 필요가 없음
- 레코드 추가, 삭제가 용이
- 색인 저장 공간과 별도의 오버플로 처리 공간이 요구됨
- 색인 처리 시간이 별도로 필요하여 파일 처리 속도가 느림
색인 순차 파일의 구성
기본 영역 : 데이터 저장 공간
색인(Index) 영역 : 인텍스가 저장되는 공간
- 트랙 영역
- 실린더 영역
- 마스터 영
오버플로 영역 : 블록 내 레코드가 모두 사용되어 더 이상 추가 입력을 할 수 없을 때 연결시켜 블록을 할당받는 공간
디렉터리(Directory) 구조
비순환 그래프 디렉터리 시스템
- 파일 또는 디렉터리의 공용이 허용될 수 있는 디렉터리 구조
- 부 디렉터리의 공동 사용이 가능
- 디스크 공간을 절약할 수 있음
- 하나의 파일이나 디렉터리가 여러 개의 경로 이름을 가질 수 있음
- 공유하고 있는 파일 제거 시 떨어진 포인터(Dangling Pointer) 문제가 발생할 수 있음
트리구조 디렉터리 시스템
- 디렉터리 구조를 확장한 임의 트리로 하나의 루트 디렉터리와 다수의 종속 디렉터리로 구성된 디렉터리
- 디렉터리 생성과 삭제 등이 용이하고 대부분의 운영체제에서 사용하고 있음
- 다른 위치라면 동일 파일이름, 동일 디렉터리 이름을 생성할 수 있음
1단계 디렉터리 시스템
- 가장 간단한 디렉터리 구조
- 모든 파일들이 유일한 이름을 가지고 있으며 같은 디렉터리 내에 위치하여 관리됨
- 동일 이름이나 디렉터리 이름을 사용할 수 없음
2단계 디렉터리 시스템
- 파일 시스템에서 중앙에 마스터 파일 디렉터리가 있고, 그 아래 사용자 파일 디렉터리가 있는 구조
- 다른 사용자와의 파일 공유가 대체적으로 어렵고 파일 이름이 보통 사용자 이름, 파일 이름의 형태를 취하므로 파일 이름의 길이가 길어짐
단편화(Fragmentation)
- 주기억 장치상에서 빈번하게 기억 장소가 할당되고 반납됨에 따라 기억 장소들이 조각들로 나누어지는 현상
- 내부 단편화 : 할당될 공간이 커서 할당된 후 남는 공간
- 외부 단편화 : 할당될 공간이 작아 할당될 수 없어 남는 공간
프로세스(Process)
- 실행 중인 프로그램
- 프로시저의 활동을 말함
- 비동기적 행위를 일으키는 주체
- 운영체제가 관리하는 실행 단위
PCB(Process Control Block)
- 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓을 수 있는 저장 장소
PCB에 저장되어 있는 정보
- 프로세스의 현재 상태
- 프로세스의 우선순위
- CPU 레지스터 정보
- 할당된 자원에 대한 정보
스레드(Threads)
- 제어의 흐름을 의미하는 것으로 프로세스에서 실행의 개념만을 분리한 것을 말함
- 프로세스의 구성을 제어의 흐름 부분과 실행 환경으로 나눌 때, 프로세스의 실행 부분을 담당함으로써 실행의 기본 다누이가 되는 것
- 하나의 프로세스 내에서 병행성을 증대시키기 위한 메커니즘
교착상태
- 두 개 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상
교착상태의 발생 조건
- 상호배체(Mutual Exclusion) : 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 함
- 점유와 대기(Hold and Wait) : 이미 자원을 가진 프로세스가 다른 자원의 할당을 요구함
- 비선점(Non-Preemption) : 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없음
- 환형 대기(Circular Wait) : 이미 자원을 가진 프로세스가 앞이나 뒤의 프로세스 자원을 요구함
교착상태 해결방법
- 예방(Prevention) : 상호배제, 점유와 대기, 비선점, 환형대기 중 어느 하나를 방생하지 않게 하는 방법
- 회피(Acoidance) : 교착상태의 발생 가능성을 인정하고 교착상태가 발생하려고 할 때 교착상태 가능성을 피래 가는 방법(은행 알고리즘)
- 회복(Recovery) : 교착상태를 일으킨 프로세스를 종료하거나 교착상태에 있는 프로세스가 점유하고 있는 자원을 선점하여 다른 프로세스에 할당하는 기법
스와핑(Swapping) : 분할된 프로그램을 순서에 상관없이 교환(Swap)하는 기술
- Swap in : Swap 캐시를 거쳐 Swap 영역에서 Swap된 페이지를 로드하는 과정
- Swap out : 반대로 저장하는 과정
분산 처리 시스템(Distributed Processing System) : 물리 지리적으로 떨어져 있는 클라이언트나 서버를 데이터베이스 서버와 네트워크로 연결시켜 사용자에서 하나의 시스템인 것처럼 데이터 처리를 가능하게 하는 시스템
분산 처리 시스템의 분류
완전 연결 구조(=망(Network)형)
- 각 사이트가 시스템 내의 모든 사이트와 연결된 구조임
계층 연결 구조(=트리(tree)형)
- 각 사이트들이 트리(Tree) 형태로 구성됨
성형 구조(스타(Star)형)
- 모든 사이트가 하나의 중앙노드에 직접 연결됨
링형 구조
- 각 사이트는 다른 두 사이트와 물리적으로 연결
- 단방향 또는 양방향으로 정보 전달이 가능
'정보처리기사' 카테고리의 다른 글
정보처리기사 데이터베이스 개념 정리 (0) | 2020.04.12 |
---|