반응형 Programming148 [혼공스터디 9기] 혼.공.컴.운. - 11. CPU 스케줄링(선택 미션 포함) 11-1 CPU 스케줄링 개요 운영체제는 CPU를 어떻게 프로세스에 배분할까? CPU 스케줄링: 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것. 이는 컴퓨터 성능과도 직결되는 중요한 문제다. 프로세스 우선순위 입출력 집중 프로세스: 비디오 재생 등 입출력 작업이 많은 프로세스. 실행 상태보다는 대기 상태에 많이 머무른다. CPU 집중 프로세스: 복잡한 수학 연산, 컴파일 등 CPU 작업이 많은 프로세스. 대기 상태보다는 실행 상태에 더 많이 머무른다. CPU 버스트: CPU를 이용하는 작업 입출력 버스트: 입출력장치를 기다리는 작업 운영체제는 각 프로세스의 PCB에 우선순위를 명시하고, PCB에 적힌 우선순위를 기준으로 먼저 처리할 프로세스를 결정한다. 그렇게 자연스레 우선순위가.. Programming/Computer Science 2023. 2. 5. [혼공학습단 9기] 혼.공.컴.운. - 10. 프로세스와 스레드 (미션 포함) 운영체제의 핵심 개념인 프로세스와 스레드에 대해 공부해보자 기본 미션 1. 다음은 프로세스 상태를 보여주는 프로세스 상태 다이어그램입니다. 1부터 5까지 올바른 상태를 적어 보세요. 생성 상태 준비 상태 실행 상태 종료 상태 대기 상태 10-1. 프로세스 개요 프로세스: 보조기억 장치에 저장된 프로그램을 메모리에 적재하고 실행한 것 프로세스 직접 확인하기 포그라운드 프로세스: 사용자가 보는 앞에서 실행되는 프로세스 백그라운드 프로세스: 사용자가 볼 수 없는 공간에서 실행되는 프로세스(유닉스에서는 데몬, 윈도우에서는 서비스) 프로세스 제어 블록 프로세스 제어 블록(PCB): 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분하는 도구. 프로세스를 식별하기 위한 .. Programming/Computer Science 2023. 2. 4. [혼공학습단 9기] 혼.공.컴.운. - 9. 운영체제 시작하기 운영체제는 01~08장에 걸쳐 배운 컴퓨터 부품들을 관리하고 프로그램을 작동시키는 특별한 프로그램 09-1. 운영체제를 알아야 하는 이유 운영체제란 실행할 프로그램에 필요한 자원을 할당하고, 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램. 운영체제 또한 프로그램이나, 특별한 프로그램이므로 항상 컴퓨터가 부팅 될 때 메모리 내 커널 영역이라는 공간에 따로 적재된다. 나머지 영역은 사용자가 사용하는 응용 프로그램이 적재되는 사용자 영역이라고 한다. 정부에 비유할 수 있다. 운영체제를 알아야 하는 이유 운영체제와의 대화로 하드웨어와 프로그램을 더 깊이 이해하고, 문제 해결의 실마리를 찾을 수 있다. 09-2. 운영체제의 큰 그림 커널, 이중모드, 시스템 호출, 운영체제가 응용 프로그램에 제공하는 서비스 .. Programming/Computer Science 2023. 2. 4. [혼공학습단 9기] 혼.공.컴.운. - 8. 입출력장치 컴퓨터의 네 가지 핵심 부품 중 마지막인 입출력장치에 대해 알아보자. 08-1. 장치 컨트롤러와 장치 드라이버 장치 컨트롤러와 장치 드라이버라는 개념을 통해 다양한 외부 장치가 컴퓨터 내부와 어떻게 연결되고 소통하는지를 알아보자. 장치 컨트롤러 입출력장치가 다루기 더 까다로운 이유 첫째, 입출력 장치에는 종류가 너무나도 많다. 키보드부터 마이크까지 다양한 입출력 장치들과 정보를 주고받는 방식을 규격화하기 어렵다. 둘째, 일반적으로 CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다. 전송률: 데이터를 얼마나 빨리 교환할 수 있는지를 나타내는 지표 이런 전송률의 차이는 CPU와 메모리, 입출력장치 간의 통신을 어렵게 한다. 장치 컨트롤러(입출력 제어기, 입출력 모듈): 위와 같은 이.. Programming/Computer Science 2023. 2. 4. 백도어(Back Door)란? 개발을 하다 '백도어'라는 개념을 처음 만났다. 배포할 때 배포가 잘 됐는지 직관적으로 확인하기 어려울 때, 백도어에 살짝 숫자만 바꿔서 배포가 새로 잘 이루어졌는지 확인하기 위해 사용하곤 한다. 하지만 백도어는 이렇게 단순하게만 사용되지는 않는다. 백도어란 정상적인 인증 절차를 거치지 않고, 컴퓨터와 암호 시스템 등에 접근할 수 있도록 하는 장치다. 설계자나 관리자에 의해 남겨진 시스템의 보안 허점을 말한다. 설계자가 일부러 남겨 놓은 경우는 개발 단계에서의 테스트를 위해, 유지 보수 시의 효율성을 위해 특수 게정을 허용하는 것이다. 중요한 것은 정상적인 인증 절차 없이 시스템에 접근할 수 있기 때문에, 백도어에 뭔가 악성 프로그램을 숨겨 놓는다면 해당 시스템을 사용했을 때 개인정보 유출이나 바이러스와.. Programming/ETC 2023. 2. 2. [혼공학습단 9기] 혼.공.컴.운. - 7. 보조기억장치(미션 포함) 07-1 다양한 보조기억장치 대중적인 보조기억장치인 하드디스크와 플래시 메모리(USB, SD카드 등)를 살펴보자. 하드 디스크 하드 디스크: 자기적인 방식으로 데이터를 저장하는 보조기억장치. 자기 디스크라고도 함 플래터: 하드디스크 속 동그란 원판. 실질적으로 데이터가 저장되는 곳. 자기 물질로 덮여 있어 0과 1의 역할을 수행하는 N극과 S극을 저장한다. 스핀들: 플래터를 회전시키는 구성 요소. 분당 회전수를 나타내는 RPM 단위로 플래터를 돌린다. 헤드: 플래터 위에 미세하게 떠 있는 채로 데이터를 읽고 쓰는 바늘 같은 부품. 디스크 암: 원하는 위치로 헤드를 이동 시킴. 헤드가 부착되어 있음 [플래터에 데이터가 저장되는 법] 트랙: 플래터를 여러 동심원으로 나누었을 때 그 중 하나의 원 섹터: 트랙.. Programming/Computer Science 2023. 1. 23. [혼공학습단 9기] 혼.공.컴.운. - 6. 메모리와 캐시 메모리 (미션 포함) 기본 미션 p. 185의 확인 문제 3번 풀고 인증하기 문제 3. 다음 설명을 읽고 SRAM에 대한 설명인지 DRAM에 대한 설명인지 쓰세요. - 주로 캐시 메모리로 활용됩니다. (1) - 주로 주기억장치로 활용됩니다. (2) - 대용량화하기 유리합니다. (3) - 집적도가 상대적으로 낮습니다. (4) 답안 SRAM DRAM DRAM SRAM p. 205의 확인 문제 1번 풀고 인증하기 문제 1. 다음 보기에 있는 저장 장치들로 저장 장치 계층 구조 도식도를 채우세요. 보기: 메모리, 보조기억장치, 캐시 메모리, 레지스터 (피라미드 위부터 1~4) 답안 레지스터: CPU 내부의 작은 임시 저장 장치로, 프로그램을 실행하는 데 필요한 값들을 임시로 저장한다. 캐시메모리: CPU와 메모리 사이에 위치하여 메.. Programming/Computer Science 2023. 1. 23. 이전 1 ··· 4 5 6 7 8 9 10 ··· 22 다음