운영체제: 정보 관리, 분산 운영 체제, UNIX
운영체제: 정보 관리
파일 : 사용자가 작성한 관련있는 레코드의 집합체
파일 시스템 : 저장, 액세스, 공유, 보호 등 보호기억장치에서의 파일을 총괄하는 파일 관리 기술
파일 디스크립터(File Descriptor, 파일 서술자) = 파일 제어 블록(FCB: File Control Block)
파일을 관리하기 위한 시스템이 필요로 하는 파일에 대한 정보를 갖고 있는 제어 블록을 의미
파일의 구조
데이터베이스: 자료구조 파일 편성 항목과 연결
직접 파일(Direct File) = 직접접근방식(DAM: Direct Access Method) : 해싱함수
색인 순차 파일(Indexed Sequential File) = 색인순차접근방식(ISAM: Index Sequential Access Method)
색인 순차 파일의 구성 : 기본 구역(Prime), 색인 구역(Index), 오버 플로 구역(Overflow)
- 색인 구역(Index Area) : 트랙(Track)-실린더(Cylinder)-마스터(Master)
디렉토리 구조
디스크 공간 할당 방법
연속 할당(Contiguous Allocation) : 디스크의 연속된 기억 공간에 할당. 접근 시간 빠름. 단편화 발생. 주기적 압축 필요.
불연속 할당(Non-Contiguous Allocation) : 파일 크기가 변경될 경우 구현이 어려운 연속 할당의 단점 보완. 디스크 공간을 일정 단위로 나누어 할당하는 기법, - 섹터 단위 할당, 블록 단위 할당
자원 보호
자원 보호 : 컴퓨터 시스템에서 사용자, 프로세스 등과 같은 주체가 프로세스, CPU, 기억장치 등과 같은 객체(자원에 불법적으로 접근하는 것을 제어하고 객체의 물리적 손상을 예방하는 기법. 주체는 접근 권한이 부여된 객체에게만 접근.
접근 제어 행렬(Access Control Matrix) : 자원 보호의 일반적인 모델
전역 테이블(Global Table) 기법
접근 제어 리스트(Access Control List) 기법
권한(자격) 리스트(Capability List) 기법
록-키(Lock-KEy) 기법
파일 보호 기법 : 파일의 명명, 비밀 번호, 접근 제어
보안 요건 : 기밀성(Confidentiality, 비밀성), 무결성(Integrity), 가용성(Availability), 인증(Authentication), 부인 방지(NonRepudiation)
보안 유지 기법 : 외부 보안, 사용자 인터페이스 보안, 내부 보안
분산 운영 체제
다중 처리기(Multi-Processor) : 하나의 시스템에 여러 개의 처리기를 둬서 하나의 작업을 각 처리기에 할당 수행
시분할 및 공유 버스 연결 방식, 크로스바 교환 행렬 연결 방식, 하이퍼 큐브 연결 방식, 다중 포트 기억장치 연결 방식
하이퍼 큐브 연결 방식 : 4개의 프로세스를 2개씩 이웃하게 열결한 사각형 모양의 2차원 하이퍼 큐브를 3차원, 4차원 순으로 하이퍼 큐브 형성. 확장성 용이. 비용 증가. 연결점 n개 일 때 프로세서 2^n개 필요
다중 처리기의 운영체제 구조와 프로세서 결합도
Master/Slave(주/종) 처리기 : 하나의 프로세서를 Master로 지정하고 나머지들은 Slave로 지정하는 구조
- 주 프로세서가 고장나면 전체 시스템 다운. 주 프로세서만 입출력 수행하는 비대칭 구조
주 프로세서 : 입출력, 연산 담당, 운영체제 수행
종 프로세서 : 연산만 담당. 입출력 발생시 주프로세서에 서비스 요청. 사용자 프로그램만 담당
분리 실행 처리기, 대칭적 처리기, 약결합 시스템, 강결합 시스템
강결합 시스템(Tightly Coupled System) : 동일 운영 체제 하에서 여러 개의 프로세서가 하나의 메모리를 공유하여 사용하는 다중(병렬) 처리 시스템
시분할 처리 시스템을 위해 설계된 대화식 운영 체제. 소스가 공개된 개방형 시스템.
C언어로 작성되어 이식성이 높으며 장치, 프로세스 간 호환성이 높다. 크기가 작고 이해하기 쉽다.
다중 사용자, 다중 작업 지원. 통신망 관리용 운영체제로 적합. 트리 구조의 파일 시스템.
커널(Kernal) : UNIX의 핵심부, 컴퓨터가 부팅될 때 적재 후 상주하며 실행. 하드웨어 보호, 인터페이스 역할, 프로세스 관리, 기억장치 관리, 프로세스간 통신, 데이터 전송 변환 등 여러가지 수행
쉘(Shell) : 명령어 해석기. COMMAND.COM 같은 기능. 보조기억장치에서 교체 가능.
Utility Program : DOS의 외부명령어에 해당. 에디터, 컴파일러, 인터프리터, 디버거 등
UNIX 파일 시스템의 구조 : 디스크를 블록으로 분류하여 배치.
부트 블록, 슈퍼 블록, Index-node 블록, 데이터 블록으로 구성.
프로세스 관련 UNIX 명령어
fork : 새로운 프로세스를 생성(하위 프로세스 호출, 프로세스 복제)
exec : 새로운 프로세스 수행
wait : fork 후 exec에 의해 실행되는 상위 프로세스가 하위 프로세스 종료 등의 event를 기다린다.
파일 및 디렉터리, 기타 관련 UNIX 명령어
rm : 파일 삭제
cat : 파일 내용을 화면에 표시
chmod : 파일 보호 모드를 설정하여 파일의 사용 허가를 지정
mount/unmount : 파일 시스템을 마운팅/마운팅 해제
fsck : 파일 시스템을 검사 하고 보수