본문 바로가기

OS4

[TIL 42일차] 리눅스 디렉토리 표준 리눅스를 쓰다보면 기본적으로 정리되어 있는 디렉토리들이 있다. 이것들을 아무것도 모르고 찾아보기엔 어느정도 용도를 알고 보는게 더 쉽게 접근이 가능하다. 루트 디렉토리: /- 파일 시스템의 바탕을 이루는 중요한 디렉토리- 모든 파일과 디렉토리의 최상위 디렉토리 바이너리 디렉토리: /bin, /sbin- 기본적인 명령의 실행 파일을 포함(/bin)- 부팅 과정이나 시스템 관리에 필요한 명령의 실행파일을 포함(/sbin) 부트 디렉토리 : /boot- 커널 이미지(vmlinuz)와 부트 로더의 설정 파일을 포함 디바이스 디렉토리 : /dev- 장치 접근하는데 사용되는 '디바이스 파일'이 위치함 시스템 설정 파일 디렉토리 : /etc- 시스템의 중요한 환경 설정 파일이 위치함 사용자 계정 디렉토리: /home.. 2024. 9. 10.
[TIL 41일차] 멀티 스케줄링 요즘 현대시대에 멀티프로세서가 기본으로 사용하는 시대이다.컴퓨터가 빨라지고 대중적으로 보급된 원인에는 CPU 코어가 하나의 침에 내장된 멀티코어 프로세스가 존재한다고 본다.우리가 아는 공부한 컴퓨터의 기초적인 이론 내용을 기반으로한 전통적인 응용프로그램은 오직 하나의 CPU만 사용한다.더 많은 CPU를 추가해도 더 빨리 실행되지 않는다. 이 문제를 해결하려면 응용 프로그램을 병렬(parallel)로 실행되도록 다시 작성해야한다.보통 쓰레드를 많이 이용하는데, 멀티 쓰레드 응용 프로그램은 작업을 여러 CPU에 할당하며, 따라서 더 많은 수의 CPU가 주어지면 더 빠르게 실행된다.배경 : 멀티 프로세서 구조먼저 근본적인 싱글 프로세서와의 차이를 알아야한다.다수의 프로세서간에 데이터의 공유, 하드웨어 캐시의 .. 2024. 8. 30.
[TIL 39일차]비례 배분 스케줄링 비례 배분(Proportional Share) 스케줄러, 혹은 공정 배분(fair a share)이라고 하는 유형의 스케줄러에 대해 봐보자.반환 시간이나 응답 시간을 최적화 하는 대신 스케줄러가 각 작업에게 CPU의 일정 비율을 보장하는 것이 목적이다.비례배분 스케줄링의 좋은 예가 추첨 스케줄링(lottery scheduling)으로 알려져 있다.기본 아이디어는 간단하다.다음 실행될 프로세스를 추첨을 통해 결정한다. 더 자주 수행되어야 하는 프로세스는 당첨 기회를 더 많이 준다.기본 개념 : 추첨권이 당신의 지분이다.추첨권(티켓)이라는 기본적인 개념이 추첨 스케줄링의 근간을 이룬다. 추첨권을 경품권의 개념과 유사하다.추첨권은 특정 자원에 대한 프로세스에게 할당될 몫을 나타낸다. 프로세스가 소유한 티켓 개.. 2024. 8. 27.
[TIL 38일차] OS의 스케줄링 전에 적었던 운영체제에 가상화에 제한적 직접 실행원리를 어느정도 이해했다면 이제 스케줄링을 봐보자.스케줄링은 정책에 의해서 돌아가는데 여기서 말하는 정책 -> 원칙(discipline)이라고도 표현가능하다.스케줄링의 기원은 컴퓨터의 등장 이전으로 간다.이거는 생산 관리분야에서 나온 개발방법이다.생산 공정이나 기타 많은 인간의 행동에서 스케줄링이 필요하고 효율성 향사등, 공통된 문제가 존재한다.워크로드에 대한 가정먼저 프로세스 동작에 대한 몇 가지 가정을 하고 시작하는데  프로세스가 동작하는 일련의 행위를 워크로드라 한다.이는 매우 중요한 부분이다. 알고가자.스케줄링의 평가항목1. 반환 시간(turnaround time)이라는 스케줄러를 평가하는 기준작업 반환 시간은 작업이 완료된 시각에서 작업이 도착한 .. 2024. 8. 25.