목록혼자 공부하는 컴퓨터구조+운영체제 (15)
ultra_dev
가상메모리 결론 : 연속 메모리 할당 방식은 좋지 않고 페이징 방식을 쓴다. 연속 메모리 할당 연속 메모리 할당 : 프로세스에 연속적인 메모리 공간을 할당 프로세스들이 메모리 내에서 연속적으로 할당되는.. 스와핑 : 현재 사용되지 않는 프로세스들을 보조기억장치의 일부 영역으로 쫓아내고(스왑 아웃) 그렇게 생긴 빈 공간에 새 프로세스를 적재하는 것(스왑 인) 즉, 지금 당장 사용하는 프로세스만 메모리에 적재하는 것! 장점 : 프로세스들이 요구하는 메모리 공간 크기 > 실제 메모리 크기 인 경우에도 프로세스들 동시에 사용 가능해짐 가령 프로세스 a,b,c,d가 동시에 실행되고 싶은데 이 4개 프로세스의 크기를 합치면 실제 물리 크기보다 커지는 경우 프로세스 a→b→c 적재 후 프로세스 b를 지금 당장 실행할..
파일 시스템 : 파일과 디렉토리를 관리하는 운영체제 내부의 프로그램 파일과 디렉토리를 다루어 주는 프로그램 파일과 디렉토리 : 보조기억장치의 데이터 덩어리 파일 보조기억장치에 저장된 관련 정보의 집합 의미 있고 관련 있는 정보를 모은 정보 파일을 이루는 정보 파일을 실행하기 위한 정보 + 부가 정보(=속성, 메타데이터) 파일의 속성 유형 : 운영체제가 인지하는 파일의 종류 확장자 실행 파일 : 없는 경우, exe, com, bin 목적 파일 : obj, o 소스 코드 파일 : c, cpp, cc, java, asm, py 워드 프로세서 파일 : xml, rtf, doc, docx 라이브러리 파일 : lib, a, so, dll 멀티미디어 파일 : mpeg, mov, mp3, mp4, avi 백업 / 보관..
교착 상태란? 대표적으로 식사하는 철학자 문제 예시 존재 철학자들이 원탁 테이블에 앉아있다. 계속 생각을 하다가 왼쪽 포크가 사용 가능하면 집어든다 계속 생각을 하다가 오른쪽 포크가 사용 가능하면 집어든다 왼쪽과 오른쪽 포크를 모두 집어들면 정해진 시간동안 식사를 한다 식사 시간이 끝나면 오른쪽 포크를 내려 놓는다 오른쪽 포크를 내려 놓은 뒤에 왼쪽 포크를 내려 놓는다 다시 1번부터 반복한다. 만약 이렇게 가정한다면 한 두명의 철학자만 식사할 때는 문제가 없지만 모든 철학자들이 동시에 이 순서로 식사를 하게 되면 누구도 식사를 할 수 없음 계속 생각만 하게 됨 왜냐하면 모든 철학자가 왼쪽 포크를 집어들면, 이후 오른쪽 포크를 들 수가 없음!! 오른쪽에 포크가 없으니!! 그래서 모든 철학자는 누군가 포크 ..
프로세스 동기화 동시다발적으로 실행되는 프로세스들은 서로 협력하며 영향을 주고 받는다 이 과정에서 자원의 일관성을 보장해야 한다. 즉 프로세스들의 동기화를 고려해야 한다. 동기화 : 공동의 목적을 위해 동시에 수행되는 프로세스 ex) 워드 프로세서 프로그램은 맞춤법 검사 프로세스와 입력 내용을 화면에 출력하는 프로세스 등이 있는데 이걸 막 실행하면 안되고 올바른 수행을 위해 동기화 되어야 한다. (프로세스) 동기화란? :프로세스들의 수행 시기를 맞추는 것 1.실행 순서 제어 : 프로세스를 올바른 순서대로 실행 2.상호 배제 : 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하기 이때 실행의 문맥을 갖는 모든 대상은 동기화 대상이기 때문에 스레드도 동기화 대상이다. 실행 순서 제어를 위한 동..