CS 공부/운영체제6 파일 시스템 최종 수정: 2025.05.19파일 시스템 (file system) 보조기억장치의 정보를 파일 및 디렉터리 (폴더)의 형태로 저장하고 관리할 수 있도록 하는 운영체제 내부 프로그램■ 파일과 디렉터리1) 파일(file)크게 파일의 이름, 파일을 실행하기 위한 정보, 파일과 관련한 부가 정보로 구성되어 있다.파일과 관련한 부가 정보- 속성(attribute) 또는 메타데이터(metadata)라고 부른다.- 파일의 형식, 위치, 크기 등 파일과 관련한 다양한 정보가 포함되어 있다. 파일을 다루는 모든 작업이 운영체제에 의해 이루어진다. 따라서 응용 프로그램은 임의로 파일을 할당받아 조작하고 저장할 수 없고, 파일을 다루는 시스템 콜을 이용해야 한다. 10개의 파일을 할당받았다면 프로세스는 할당을 받아 사용 중.. 2025. 5. 19. 가상 메모리 최종 수정: 2025.05.19가상 메모리CPU와 프로세스가 메모리 몇 번지에 무엇이 저장되어 있는지까지 다 알고 있지는 않다. 이를 알기 위해서는 CPU 내부의 저장공간(레지스터)이 메모리만큼 커야 할 텐데, 실제로는 그보다 훨씬 작은 용량을 갖고 있기 때문이다. 게다가 새로운 프로세스는 새롭게 메모리에 적재되고, 사용되지 않는 프로세스는 메모리에서 삭제된다. 다시 말해, 메모리 정보는 시시때때로 변경될 수 있어, 정보들을 모두 기억하고 있기는 어렵다.■ 물리 주소와 논리 주소물리 주소(physical address): 메모리의 하드웨어 상 실제 주소논리 주소(logical address): 프로세스마다 부여되는 0번지부터 시작하는 주소 체계CPU와 프로세스의 물리 주소가 아니라 논리 주소 체계를 사용.. 2025. 5. 19. CPU 스케줄링 최종 수정: 2025.05.16CPU 스케줄링 (CPU scheduling)다양한 프로세스와 스레드에 CPU의 CPU 자원을 관리하는 배분 방법이다. CPU 스케줄링 알고리즘은 CPU 스케줄링의 절차를 말하며, 이 스케줄링 알고리즘을 결정하고 수행하는 운영체제의 일부분을 CPU 스케줄러(CPU scheduler)라고 한다.■ 우선순위모든 프로세스는 CPU의 자원을 필요로 하기 때문에 운영체제는 공정하고 합리적인 방법으로 CPU의 자원을 프로세스에 할당해야 한다. 공정하게 배분하는 방법이란 CPU의 자원을 우선순위를 판단하여 PCB에 명시하고, 우선순위가 높은 프로세스에는 CPU의 자원을 더 빨리, 더 많이 할당하는 것을 말한다.CPU 활용률(CPU utilization)- 전체 CPU의 가동 시간 중 작.. 2025. 5. 17. 동기화와 교착 상태 최종 수정: 2025.05.15동기화와 교착 상태프로세스 혹은 스레드가 공유하는 자원을 공유 자원(shared resource)라고 한다. 메모리나 파일이 될 수도 있고, 전역 변수나 입출력장치가 될 수도 있다. 이때 공유 자원을 두고 동시다발적으로 실행되는 다수의 프로세스 혹은 스레드가 마구잡이로 실행된다면, 에러가 발생한다. 공유 자원에 접근하는 코드 중 동시에 실행했을 때 문제가 발생할 수 있는 코드를 임계 구역(critical section)이라고 한다. 즉, 동시에 실행되는 프로세스나 스레드가 동시에 임계 구역에 진입하여 실행되면 문제가 발생할 수 있다. 그렇기 때문에 언제나 임계 구역을 동시에 실행하지 않도록 유의해야 한다. 동시에 임계 구역의 코드를 실행하여 문제가 발생하는 상황을 레이스 컨.. 2025. 5. 15. 프로세스와 스레드 최종 수정 : 2025.05.10프로세스와 스레드메모리에는 컴퓨터가 실행되는 순간부터 다양한 프로세스들이 적재되어 실행된다. 프로세스의 유형포그라운드 프로세스(foreground process): 사용자가 보는 공간에서 사용자와 상호작용하며 실행된다.백그라운드 프로세스(background process): 사용자가 보지 못하는 곳에서 실행된다.데몬(demon)- 사용자와 별다른 상호작용 없이 주어진 작업만 수행하는 백그라운드 프로세스- cf) 윈도우 운영체제에서는 서비스(service) 라고 부른다. 프로세스의 유형을 막론하고 하나의 프로세스를 구성하는 메모리 내의 정보는 크게 다르지 않다.커널 영역: 프로세스 제어 블록(PCB)가 저장된다.사용자 영역: 실행 중인 프로세스가 코드 영역, 데이터 영역, .. 2025. 5. 10. 이전 1 2 다음 more