일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 파싱
- 소프트웨어공학
- 운영체제
- 가상메모리
- 객체지향설계
- 컴파일러
- React
- DB
- 자연어처리
- css
- 컴파일
- 클래스
- 오픈소스웹소프트웨어
- 벡터
- 파싱테이블
- Linear Algebra
- 언어모델
- 스케줄러
- 프로세스
- 애자일
- 웹소프트웨어
- 랩실일기
- Agile
- NLP
- OS
- 836
- 데이터분석
- C언어
- 데이터베이스
- 정보검색
Archives
- Today
- Total
observe_db
[OS] 1. 운영체제 소개(2) 본문
운영체제 설치 환경
고 성능 환경의 운영체제
- 특별한 설계 요구 및 하드웨어 지원 필요
- 대용량 메모리
- 특수목적 하드웨어
- 많은 수의 프로세스
- 슈퍼컴퓨터 운영체제(Linux기반이 53%, 2021)
임베디드 시스템(embedded system, 내장형 시스템)
- 제한된 특정 기능을 수행하는 작은 규모의 시스템
- 제한된 컴퓨팅 자원 보유[1]
- Embedded Linux
- Android
- Tizen
- iOS
- Windows Mobile
- RTOS
가상기계(virtual mahine, VM)
- 컴퓨터의 소프트웨어적 추상화(abstraction) 제공
- 임의의 OS 상에서 특정 하드웨어가 있는 것처럼 환경을 제공하여, OS 설치 지원
- VMWare, Virtual Box, Parallels (macOS)
- 임의의 운영체제 상에서, 특정 소프트웨어 실행 환경 제공
- JVM(Java Virtual Machine), NET framework
- 단일 컴퓨터에서 여러 개 운영체제의 동시 실행 환경 제공
- 에뮬레이션(emulation)
- 실제 없는 하드웨어 기능을 있는 것처럼 하는 것
- 이식성(portability) 개선[2]
- JVM
- JRE(Java Runtime Environment)
- bytecode: 구조 중립의 중간코드
- Microsoft .NET Framework
- CLR(Common Language Environment): .NET 가상기계
- MS-IL(Microsoft Intermediate Language): 중간코드 기술 언어
Windows Subsystems for Linux(WSL)
- MS에서 개발한 윈도우 상에서 Linux 호환 커널을 제공하는 부분
- Ubuntu Linux의 명령어 대부분 지원
- Windows 10/11에서 지원
- WSL1->WSL2
운영체제 핵심 요소
커널(kernel)
- 운영체제의 핵심 구성요소를 포함하는 부분
- 프로세서 스케줄러(processor scheduler)
- 메모리 관리기(Memory manager)
- 입출력 관리기(I/O manager)
- 프로세스간 통신 관리기(Interprocess communication(IPC) manager)
- 파일 시스템 관리기(file system manager)
시스템 콜(system call)
- 응용 프로그램이 커널에서 제공하는 서비스를 사용할 수 있도록, 커널에서 제공하는 인터페이스(API)
운영체제 구조
-단일구조(monolithic architecture)
- 커널에 모든 구성요소 포함
- 일반적으로 매우 효율적
- 코드가 함께 되어있어 미묘한 오류 원인 식별 어려움
- => 유지보수의 어려움
- 뭉뚱그리는 초창기 형태
-계층적 구조(layered architecture)
- 유사한 기능을 하는 것을 층(layer)로 그룹화
- 각 층은 인접 층과만 통신
- 프로그램의 요청이 인접하지 않은 층으로 전달될 때는 여러 층 경유
- =>처리시간 관점에서 단일구조에 비해 비효율성
-마이크로 커널 구조(microkernel architecture)
- 커널에 반드시 필요한 최소한의 기능만 구현
- 그 외의 커널 기능은 사용자 공간에서 구현
- Mach OS(Mac OS X, GNU GURD의 커널 기반)
- VxWorks, Windows NT
[1] 이 때문에 임베디드 시스템에서 재귀적인 방식은 사용이 제한된다.
[2] 간단히 말해서 이쪽의 환경에서 사용하던 것을 다른 환경으로 '이식'하더라도 가능하게 만드는 특성이다.
'학교 공부 > 운영체제(OS)(3-1)' 카테고리의 다른 글
[OS] 3. 프로세스(Process)(1) (0) | 2023.03.29 |
---|---|
[OS] 2. 하드웨어와 소프트웨어(3) (0) | 2023.03.21 |
[OS] 2. 하드웨어 및 소프트웨어(2) (0) | 2023.03.20 |
[OS] 2. 하드웨어 및 소프트웨어(1) (0) | 2023.03.15 |
[OS] 1. 운영체제 소개(1) (0) | 2023.03.10 |
Comments