[OS] 운영체제 구조 - 모놀리식 커널(Monolithic Kernel), 마이크로커널(Microkernel), 혼용 커널(Hybrid Kernel)
·
Computer Science/Operating System
범용 운영체제의 구조의 다양한 방법간단한 구조 → MS-DOS좀 더 복잡한 제한적 구조 → UNIX계층적 접근 구조 → 추상화 개념마이크로 커널(Microkernel) 접근 구조 → MachMS-DOS 구조‘모듈’(Moudles)로 잘 분할되지 않았음 → 모놀리식 커널(Monolithic Kernel)커널의 구성 요소들은 각 요소들 간의 보호 기능 없이 한 곳에 위치악의적인 프로그램의 공격을 받기 쉬움, 잘못되면 시스템 전체가 다운됨계층적 접근 (Layered Approach)주된 장점은 ‘모듈화’(Modularity)특정 기능 집한의 구현 세부 사항에 대한 ‘은폐’(Hiding) 방법각 계층은 자신의 하위 층의 서비스와 기능(연산)만을 사용장점‘시스템 검증’과 ‘디버깅 작업’을 단순화단점비효율적, 처리..
[OS] 운영체제 설계 및 구현 (OS Design)
·
Computer Science/Operating System
운영체제 설계 (OS Design)첫 번째 문제: ‘시스템 목표’와 ‘명세’를 정의 설계 요구 조건사용자 목적→ 사용하기 쉽고 편리하며, 배우기 쉽고, 믿을 수 있고, 안전하며, 신속해야 함 시스템 목적→ 설계, 구현, 유지 보수가 쉬어야 하며, 적응성, 신뢰성, 무결성, 효율성을 가져야 함 설계 시 중요한 원칙‘기법’(Mechanism)으로부터 ‘정책’(Policy)을 분리해야 한다!→ 융통성을 위해 매우 중요, 나중에 정책만 바꾸면 됨  기법 (Mechanism)‘어떻게’(How) 해결할 것인가를 결정하는 것ex) 타이머 구조: CPU보호 기법은 ‘Timer’(타이머)로 정책 (Policy)‘무엇을’(What) 할 것인가를 결정하는 것ex) 타이머 구조: ‘Time Out 시간 결정’
[OS] 시스템 서비스 (System Service), 링커(Linker)와 로더(Loader)
·
Computer Science/Operating System
시스템 서비스 (System Service)파일 관리 (File Management)상태 정보 (Status Management)파일 변경 (File Modification)프로그래밍 언어 지원 (PL Support)프로그램 적재와 수행 (Program Loading & Execution)통신 (Communication)백그라운드 서비스 (Background Service)링커와 로더 (Linckers and Loaders)ROF (Relocatable Object File): 재배치 가능한 개체 파일임의의 물리적 메모리 위치에 로드되도록 설계된 개체 파일로 컴파일된 소스 코드 링커 (Linker)ROF를 단일 바이너리 실행 파일로 결합라이브러리를 가져옴 로더 (Loader)프로그램을 주 기억장치(Mai..
[OS] 시스템 호출(System Call)이란? 구현과정?
·
Computer Science/Operating System
시스템 콜 (System Calls) 일반적으로 고급 언어(C와 C++)로 작성된 루틴 형태로 제공대부분의 사용자는 시스템 호출을 직접적으로 사용하기 보다는, 응용 프로그램 인터페이스(API: Application Program Interface)를 통한 프로그램에 의해서 접근응용 프로그래머가 가장 많이 사용하는 3가지 APIWin32 API (Windows)POSIX API (POIX기반 거의 모든 버전의 UNIX, Linux, Mac OS X)JAVA API (JVM에서 수행될 수 있는 프로그램)직접 시스템 호출을 부르기보다 API를 사용한 프로그래밍을 선호하는 이유프로그램 ‘호환성’을 높일 수 있음 (어디서든 컴파일, 실행)실제 프로그램 상에서 작업하기 더 쉬움 예시시스템 호출 구현 (System ..
HaSeon9
'Computer Science/Operating System' 카테고리의 글 목록 (4 Page)