- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 공유대학
- C언어
- oauth
- 프로그래밍 입문
- 배열
- til
- 파이썬
- 자바
- android studio
- Java
- 백준
- Firebase
- firebase google
- 로그인
- 안드로이드 스튜디오
- 알고리즘
- 정렬
- sql
- 연결리스트
- C++
- python
- 컴퓨터공학과
- 안드로이드
- 구글 로그인
- 자료구조
- 동적할당
- 코딩테스트
- 프로그래머스
- 비주얼 베이직
목록학교 공부/운영체제 (5)
코딩하는 해달이
프로세스의 문제점 다중 프로세스를 이용한 멀티태스킹 - 응용프로그램에서 여러 프로세스를 생성하여 동시에 여러 작업 실행 - 운영체제는 스케줄링을 통해 여러 프로세스를 번갈아 실행 프로세스를 실행단위로 하는 멀티태스킹의 문제점 1. 프로세스 생성의 큰 오버헤드 - 프로세스를 위한 메모리 할당, 부모 프로세스로 부터 복사 - PCB 생성, 매핑 테이블 생성 등 2. 프로세스 컨텍스트 스위칭의 큰 오버헤드 - CPU 레지스터들을 컨텍스트로 PCB에 저장, 새 프로세스 컨텍스트를 PCB에서 CPU 로 옮기는 시간 - CPU가 참고할 매핑 테이블(페이지 테이블)의 교체 시간 - CPU 캐시에 새 프로세스의 코드와 데이터가 채워지는데 걸리는 시간 등 3. 프로세스 간 통신의 어려움 - 프로세스가 다른 프로세스의 메..
스레드 동기화의 필요성 - 다수의 스레드가 동시에 공유 데이터에 쓰기를 접근하면 공유데이터가 훼손되는 문제 발생 가능 - 두 스레드가 동시에 공유데이터에 쓰는 경우 → 공유데이터 훼손 가능 스레드 동기화란? - 공유데이터에 대한 다수의 스레드가 동시에 접근할 때 공유데이터가 훼손되지 않게 하는 기법 공유데이터 접근 문제의 해결책 - 문제점 = 여러 스레드가 공유변수에 접근할 때, 공유 데이터 훼손 - 해결책 = 스레드 동기화 : 한 스레드가 공유데이터 사용을 마칠 때까지, 다른 스레드가 공유데이터에 접근하지 못하도록 제어 - 멀티스레드의 경쟁상황은 매우 자주 발생하며 다중 코어에서 더욱 조심해야한다. 스레드 동기화와 관련된 2가지 중요 개념 임계구역(critical section) - 공유 데이터에 접근..
프로세스 개요 프로세스 개요 프로그램 하드디스크 등의 저장 매체에 저장. 실행 파일의 형태 프로세스 프로그램이 메모리에 적재되어 실행 중인 상태 필요한 모든 자원을 할당 받음 자원 : 코드 공간, 데이터 공간, 스택 공간, 힙 공간 프로세스 특징 운영체제는 프로그램을 메모리에 적재하고 프로세스를 다룸 운영체제는 프로세스에게 실행에 필요한 메모리 할당, 이곳에 코드와 데이터 등 적재 프로세스들은 서로 독립적인 메모리 공간을 가짐. 다른 프로세스의 영역에 접근 불허 운영체제는 각 프로세스의 메모리 위치와 크기 정보를 관리한다. 운영체제는 프로세스마다 고유한 번호 할당 프로세스의 관한 모든 정보는 커널에 의해 관리 프로세스는 실행-대기-잠자기-실행-종료 등의 생명 주기를 가짐 프로세스 생성, 실행, 대기, 종..
컴퓨터 시스템과 운영체제 컴퓨터 시스템의 범위 컴퓨터 시스템의 계층 응용프로그램 층 운영체제 층 컴퓨터 하드웨어 층 컴퓨터 시스템의 계층 사용자는 응용프로그램과 GUI/도구프로그램을 통해 컴퓨터 활용 하드웨어는 모두 운영체제의 배타적 독점적 지배 받음 사용자나 응용프로그램의 하드웨어에 대ㅐ한 직접접근 불허 컴퓨터 시스템의 계층 사용자가 하드웨어에 대해 몰라도 컴퓨터를 사용할 수 있도록 함 응용프로그램과 하드웨어 사이의 중계 위로는 응용프로그램과 아래로는 하드웨어와의 인터페이스 컴퓨터 하드웨어 구성 컴퓨터 하드웨어 설명 CPU 프로그램 코드를 해석하여 실행하는 중앙처리장치 컴퓨터의 가장 핵심 전원이 공급될 때 작동, 메모리에 적재된 프로그램 실행 메모리 CPU에 의해 실행되는 프로그램 코드와 데이터가 적재..
참고서적 더보기 운영 체제 - 황기태(생능출판사) 운영체제의 개념 운영체제 정의 컴퓨터 사용자와 컴퓨터 하드웨어 사이에서 중계역할을 하면서 프로그램을 실행을 관리하고 제어하는 시스템 소프트웨어 운영체제는 컴퓨터가 아니다 운영체제는 실체가 있는 소프트웨어 - 인터페이스 컴퓨터가 켜질 때 처음으로 적재되어 나머지 모든 프로그램의 실행을 제어하고 사용자의 요청을 처리해주는 소프트웨어 컴퓨터의 자원을 독점적으로 관리하는 특별한 소프트웨어 운영체제의 정의에서 핵심 단어 운영체제는 컴퓨터의 모든 자원(resource) 관리 자원 하드웨어 자원 - CPU,캐시,메모리 등 소프트웨어 자원 - 응용프로그램 데이터 자원 - 파일, 데이터베이스 운영체제는 자원에 대한 독점(exclusive) 권한 소유 자원에 대한 모든 관..