반응형 전체 글117 프로세스[1] - 프로세스란, PCB와 Context Switch 프로세스실행 중인 프로그램프로그램이 CPU에 의해 수행되고, 메모리에 할당된 상태프로세스는 작업을 완료하기 위해 CPU, memory, file, I/O devices와 같은 자원을 필요로 한다.각각의 프로세스는 독립된 메모리 영역을 할당 받는다.* 프로그램 : 하드웨어를 동작시키는 명령어 집합 프로세스의 구조 프로세스는 메모리에서 위와 같이 여러개의 구역으로 나뉜다.코드 영역(Text Section) : 실행 코드(명령어)가 저장됨데이터 영역(Data Section) : 전역 변수, 정적 변수가 저장되는 영역힙 영역(Heap Section) : 동적으로 할당된 메모리가 저장되는 영역스택 영역(Stack Section) : 함수 호출 시 지역 변수, 매개변수, 리턴 주소 등이 저장되는 영역* JVM으로.. 2024. 7. 25. 메모리[2] - 페이징, 가상메모리 메모리 단편화외부 단편화 첫번째 단계에서 process5, 8, 2가 할당되어있다.process8을 종료 시켜 중간에 비어있는 메모리 영역을 확보하였다.이후 process9를 실행시켜 메모리 영역에 할당하였고, 그런 다음 process5를 종료 시켜마지막 단계처럼 두개의 비어있는 영역을 확보하였다. 이때, process8을 메모리에 할당할 수 있을까??두 비어있는 영역을 합쳐놓으면 process8을 할당할 만큼 충분한 공간이지만 연속적으로 존재하지 않기에 메모리 영역에 할당하지 못한다. 이와 같이 메모리에 충분한 공간이 있지만 연속적으로 존재하지 않아 데이터를 할당하지 못하는 상황을 외부 단편화 라고 한다. 내부 단편화 내부 단편화는 메모리 영역을 여러 프레임으로 나누어 각 프레임에 프로세스를 나누어 할.. 2024. 7. 25. 메모리[1] - 메모리 주소 할당 메모리는 고유한 주소를 가지고 있는 바이트 배열로 구성된 데이터로 구성된다.CPU는 메모리 주소로 접근하여 저장된 명령어를 가져와 처리함으로써 프로그램을 동작 시킨다.Logical Address와 Physical Address의 구분CPU가 프로세스를 수행하기 위해 사용하는 메모리 주소는 실제 물리적 메모리 주소와 다르다.우리는 이 메모리 주소를 아래와 같이 구분한다.Logical Address : CPU가 생성하는 프로세스의 메모리 주소Physical Address : 실제 메모리에 할당되는 물리적 주소 먼저, 메모리 주소를 왜 구분하는지 알아보자.이를 이해하는 것이 앞으로 설명할 개념을 이해하는데 큰 도움이 될 것이다. 1. 물리적 메모리 주소 추적의 어려움물리적 메모리 주소는 변동될 수 있어, CP.. 2024. 7. 20. Garbage Collection의 동작 방식과 종류 Garbage Collection"JVM의 가비지 컬렉터가 불필요한 메모리 자원을 해제하는 작업"자바에서 명시적으로 불필요한 데이터를 표현하기 위해서 null을 선언할 수 있다. 허나, 이러한 패턴의 코드는 잘 보이지 않는다. 가독성에도 좋지 않지만 null을 선언하지 않아도 가비지 컬렉터의 알고리즘에 의해 수집 될 수 있다. 가비지 컬렉션은 객체를 참조하는 다른 자원이 있는지 확인하는 Reachable 작업을 통해 제거 대상을 판단한다.가비지 컬렉션의 대상인 힙 영역의 객체들은 스택 영역의 변수들이나 참조타입의 정적 필드 의해 참조된다.스택이나 정적 필드에 의해 참조되는 객체를 Reachable이라고 하고, 참조되지 않는 객체는 UnReachable이라고 한다.가비지 컬렉션은 UnReachable이라고.. 2024. 7. 6. 이전 1 2 3 4 5 6 7 8 ··· 30 다음 반응형