일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 캐러셀
- JSON.parse
- 객체
- react-slick
- JSON.stringify
- logstash
- nest
- Map
- 로그스태시
- javacript
- 카카오로그인
- 중첩 구조 분해
- context switch
- JavaScript
- TypeScript
- 참조에 의한 객체 복사
- 화살표 함수
- DB
- 위크셋
- 이메일 전송
- MongoDB
- Mongoose
- AGGREGATE
- nestjs
- nextjs
- 구조 분해 할당
- 위크맵
- 자바스크립트
- nodemailer
- 카카오 소셜로그인
- Today
- Total
목록운영체제 (25)
뚜sh뚜sh

Thread - "A thread(or lightweight process) is a basic unit of CPU utilization" - Thread의 구성(CPU 수행과 관련된 것들) program counter register set stack space - Thread가 동료 thread와 공유하는 부분(=task) code section data section OS resources - 전통적인 개념의 heavyweight process는 하나의 thread를 가지고 있는 task로 볼 수 있다 - 다중 스레드로 구성된 태스크 구조에서는 하나의 서버 스레드가 blocked(waiting) 상태인 동안에도 동일한 태스크 내의 다른 스레드가 실행(running)되어 빠른 처리를 할 수 있다 -..

프로세스의 개념 1. "Process is a program in execution" 2. 프로세스의 문맥(context) - CPU 수행 상태를 나타내는 하드웨어 문맥 Program Counter 각종 register - 프로세스의 주소 공간 : code, data, stack - 프로세스 관련 커널 자료 구조 PCB(Process Control Block) Kernel stack 프로세스의 상태(Process State) - 프로세스는 상태(state)가 변경되며 수행된다 1. Running CPU를 잡고 instruction을 수행중인 상태 2. Ready CPU를 기다리는 상태(메모리 등 다른 조건을 모두 만족하고) 3. Blocked(wait, sleep) CPU를 주어도 당장 instructi..

동기식 입출력과 비동기식 입출력 동기식 입출력(synchronous I/O) : I/O 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어감 - 구현방법1 I/O가 끝날 때까지 CPU를 낭비시킴 매시점 하나의 I/O만 일어날 수 있음 - 구현방법2 I/O가 완료될 때까지 해당 프로그램에게서 CPU를 빼앗음 I/O 처리를 기다리는 중에 그 프로그램을 줄 세움 다른 프로그램에게 CPU를 줌 비동기식 입출력(asynchronous I/O) : I/O가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어감 ※ 두 경우 모두 I/O의 완료는 인터럽트로 알려줌 DMA(Direct Memory Access) - 빠른 입출력 장치를 메모리에 가까운 속도로 처리하기 위해 ..

Mode bit 1. 사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호 장치 필요 2. Mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원 1 - 사용자 모드 : 사용자 프로그램 수행 0 - 모니터 모드(= 커널 모드, 시스템 모드) : OS 코드 수행 - 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 '특권명령'으로 규정 - Interrupt나 Exception 발생 시 하드웨어가 mode bit을 0으로 바꿈 - 사용자 프로그램에게 CPU를 넘기기 전에 mode bit을 1로 셋팅 Timer - 타이머 정해진 시간이 흐른 뒤 운영체제에게 제어권이 넘어가도록 인터럽트를 발생시킴 타이머는 매 클럭 틱 때마다 1..
운영체제란 무엇인가? 운영체제(Operating System, OS)란? - 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 - 협의의 운영체제(커널) : 운영체제의 핵심 부분으로 메모리에 상주하는 부분 - 광의의 운영체제 : 커널뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 운영체제의 목적 1. 컴퓨터 시스템의 자원을 효율적으로 관리 - 프로세서, 기억장치, 입출력 장치 등(하드웨어 자원)의 효율적 관리 사용자간의 형평성 있는 자원 분배 주어진 자원으로 최대한의 성능을 내도록 - 사용자 및 운영체제 자신의 보호 - 프로세스, 파일, 메시지 등(소프트웨어 자원)을 관리 2. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 - 운영체제는 ..