앞으로 이어질 글들의 개요에 대해서 설명하겠습니다~ 🤓프로그램을 실행는 중요한 작업 공간다중 프로그래밍 환경을 생각해봅시다. 한정된 메모리를 여러 프로세스가 함께 사용하게 됩니다. 따라서, 효율적으로 관리하는 방법은 필수입니다! 이 관리의 주체는 메모리 관리자인데요,
오늘은 Paging, Sementation과 같은 분산 메모리 할당이 고안된 이유인 단편화에 대해 알아보겠습니다! 🤓메모리의 빈 공간 또는 자료가 여러 조각으로 나뉘는 현상예시를 보여드릴게요.총 1500kb 만큼의 메모리가 남지만 각각이 나뉘어져 있어 1300kb를
프로세스를 일정한 크기의 page로 잘라서 메모리에 적재하는 가상메모리와 물리메모리의 매핑 기술외부 단편화 해결 방법입니다. 논리적 주소를 동일한 크기로 자르고 물리적 주소도 동일한 크기로 잘라 자투리 공간(hole)이 발생하지 않도록 하는 기법입니다.가상기억장치를 모
시스템은 프로그램을 실행할 때 해당 프로그램을 메모리에 로드합니다. 그 메모리 구조에 대해 알아보겠습니다!실행되고 있는 프로그램으로, 프로세스는 각 메모리 공간을 시스템으로부터 할당 받습니다.UNIX 시스템은 프로세스에 4GB의 가상메모리를 할당하는데요,하위 3GB를
면접 단골질문! 프로세스와 스레드의 차이는 뭔가요?에 대해서 설명해볼게요~운영체제에서 실행중인 하나의 프로그램프로세스: 동적 / 프로그램: 정적실행중?? -> 시스템 자원을 할당 받은 상태CPU 시간운영되기 위해 필요한 주소공간독립된 메모리 공간 -> Code, Dat
메모리관리 관련 글입니다! 전 포스팅을 참고해주세요😀가상 메모리를 논리적 단위인 세그먼트로 분할하고 메모리를 할당하는 기술이 기술은 (프로세스 = 세그먼트 \* n)의 관점에서 바라봅니다. 프로세스를 code + data + stack으로 바라보는 것은 하나의 세그멘
이전의 Task의 상태를 보관하고 새로운 Task의 상태를 적재하는 작업
Frame: 메모리를 나눈 조각. 따라서 메모리는 Frame의 집합Page: 프로세스를 나눈 조각. 따라서 프로세스는 Page의 집합프로세스가 특정 페이지를 요구할 때 \- if 페이지가 이미 메모리에 올라가 있다 👉 그걸 참조 \- else page fault
이렇게 접근 가능한 자원에 따라 모드가 나뉘어 있다.유저모드커널모드두 모드로 나뉘어져 있는데, 이는 커널에서 중요한 자원을 관리하기 때문에 사용자가 그 중요한 자원에 접근하지 못하도록 모드를 2가지로 나눈 것이다.즉, 보안성과 안전성 확보를 위해 나눔각 모드에 대해 알
운영체제 - Thread 동기화(커널모드)Thread의 문제점If multiple threads access the same mutable state variable without appropriate synchronization your program is broke