
가상화 ⚫ 단일 컴퓨터의 하드웨어를 여러 가지 실행 환경으로 추상화하여, 개별 환경이 자신만의 컴퓨터에서 실행되고 있다는 환상을 만들 수 있는 기술 ⚫ 가상 머신 사용자는 다양한 운영체제를 전환할 수 있다. (단일 운영체제에서 동시에 실행되는 다양한 프로세스 간에 전환하는 방식과 유사) 가상화 소프트웨어 = 에뮬레이션을 포함하는 클래스의 구성원 에뮬레이션 : 소스 CPU유형이 대상 CPU 유형과 다른 경우에 사용 -> 에뮬레이트된 코드는 원래의 코드보다 느리게 수행된다. -> 에뮬레이션은 비용이 크다. ex) Apple사가 자신의 데스크톱과 랩톱 컴퓨터의 CPU를 IBM Power CPU에서 인텔 x86 CPU로 전환했을 때 "Rosetta"라는 에뮬레이션 설비를 포함하여 IBM CPU용으로 컴파일되었던..

프로세스 관리 프로세스 = 실행 중인 프로그램 프로세스는 CPU 시간, 메모리, 파일, 입출력 장치를 필요한 여러 가지 자원을 필요로 한다. 일반적으로 이러한 자원은 실행되는 동안 할당된다. 프로세스가 생성될 때 할당받는 여러 가지 물리적 논리적인 자원들 이외에도, 여러 초기화 데이터(입력)도 전달될 수 있다. 프로세스가 종료되면 운영체제는 재사용 가능한 자원을 회수한다. ex) 웹 페이지 내용을 화면에 표시하는 프로세스에서, URL을 입력으로 제공받으며 적절한 명령과 시스템 콜을 실행한다. ⚫ 프로그램 : 수동적 (passive) - 디스크에 저장된 파일의 내용 ⚫ 프로세스 : 능동적 (active) - 다음 수행할 명령을 지정하는 프로그램 카운터(Program Counter)를 가짐 한 프로세스의 수..

단일 처리기 시스템 : 코어를 가진 메인 CPU가 하나 있을 경우 코어란? : 명령을 실행하고 로컬로 데이터를 저장하기 위한 레지스터를 포함하는 구성 요소 코어를 가진 하나의 메인 CPU는 프로세스 명령어를 포함하여 범용 명령어 세트를 실행할 수 있다. 단일 처리기 시스템에는 메인 CPU의 오버헤드를 줄이기 위해 다른 특수 목적 프로세서(처리기)가 존재한다. 이 처리기들은 프로세스를 실행하지 않고 제한된 명령어 집합을 실행한다. 운영체제는 보통 특수 목적 프로세서는 운영체제와 통신하지 않고 독립적으로 자신의 작업을 처리하지만, 가끔씩 운영체제는 이 처리기들이 수행할 다음 태스크에 대한 정보를 보내고 처리기들의 상태를 감시한다. 다중 처리기 시스템 : 단일 코어 CPU가 있는 프로세서가 두 개 이상있을 경..

1. 통상적인 PC 컴퓨터 시스템 구조 ⭐️ 현대의 컴퓨터 시스템 구성 : CPU + 장치 컨트롤러 + 구성요소(장치) -> 시스템 버스(주요 구성요소 사이의 통신경로)를 통해 연결되어있다. ⭐️ 장치 컨트롤러 : 특정 유형의 장치를 담당 : 둘 이상의 장치 연결 가능 : 일부 로컬 버퍼 저장소와 특수 목적 레지스터 집합을 관리 : CPU와 장치 컨트롤러는 병렬로 실행되어 메모리 사이클을 놓고 경쟁 ⭐️ 장치 드라이버 : 장치 컨트롤러의 작동을 잘 알고있고 나머지 운영체제에 장치에 대한 일관된 인터페이스를 제공 : 각 장치 컨트롤러마다 장치 드라이버 존재 2. 인터럽트 (Interrupts) 인터럽트는 운영체제와 하드웨어 상호 작용의 핵심 부분을 담당한다. 프로그램이 지체되지 않고 바로 넘어가기 위해 인..

💾 컴퓨터 시스템의 구성 💾 1. 하드웨어 ✅기본 계산용 자원 제공 ✅중앙 처리 장치(CPU), 메모리 및 입출력(I/O) 장치 2. 운영체제 ✅다양한 사용자를 위해 다양한 응용 프로그램 간의 하드웨어 사용을 제어하고 조절 3. 응용프로그램 ✅사용자의 계산 문제를 해결하기 위해 이들 자원이 어떻게 사용될 지 정의 ✅워드 프로세서, 스프레드 시트, 컴파일러, 웹브라우저 등 4. 사용자 ✅컴퓨터 시스템을 이용하는 사람 ✅응용프로그램을 실행하고자 하는 프로세스도 사용자가 될 수 있다. 사용자의 관점에서 운영체제의 역할 사용자의 관점은 인터페이스에 따라 달라진다. 사용자의 관점에서 봤을때 운영체제의 주 역할은 사용자가 수행하는 작업을 최대화하는 것이다. 따라서 운영체제는 대부분 사용자의 용이성을 위해 설계되고 ..
- Total
- Today
- Yesterday
- 혼공
- Linux
- 운영체제
- 개발일지
- C++
- 스페인
- 프로젝트
- googleapis
- 리눅스
- nodejs
- 자바스크립트
- 스페인 교환학생
- 백엔드 개발
- 혼공단 9기
- 혼공단
- 해커톤
- Signal
- 교환학생
- JS
- 혼공학습단
- Process
- AWS
- 백준
- 혼공단 SQL
- 공룡책
- JavaScript
- 깃 예제
- MySQL
- 개발
- SQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |