
총 46개
-
가상메모리에서 페이지 대치 알고리즘 비교2025.01.171. FIFO 알고리즘 FIFO 알고리즘은 메인 메모리에 가장 먼저 입력된 페이지를 선택하여 제거하는 방식입니다. 이는 마치 터널을 통과하는 자동차와 같아서, 터널에 가장 먼저 들어간 자동차가 반대편 터널에서 가장 먼저 나오게 됩니다. 2. 최적 페이지 대치 알고리즘 최적 페이지 대치 알고리즘은 향후 가장 오랫동안 사용되지 않을 페이지를 선택하여 교체합니다. 이는 향후 2초 동안 사용되지 않을 페이지를 교체하는 것과 같습니다. 3. LRU 알고리즘 LRU 알고리즘은 가장 최근에 사용되지 않은 페이지를 교체합니다. 이는 집을 청소하는...2025.01.17
-
가상 메모리 소개 및 페이징 기술, 페이지 교체 알고리즘2025.01.021. 가상 메모리 가상 메모리는 컴퓨터 과학과 운영 체제의 기본 개념입니다. 이를 통해 컴퓨터는 하드 드라이브의 일부를 RAM의 확장으로 사용하여 물리 메모리(RAM)의 제한을 보완할 수 있습니다. 이 기술을 통해 효율적인 멀티태스킹이 가능해져 물리 메모리에 완전히 적합하지 않은 대규모 프로그램을 실행할 수 있습니다. 2. 페이징 기술 및 분할 페이징과 분할은 가상 메모리 구현에 사용하는 두 가지 주요 방법입니다. 페이징에서는 물리 메모리와 가상 메모리를 고정 크기의 블록으로 분할하고 가변 크기의 블록으로 분할합니다. 두 기술 모두...2025.01.02
-
[자료구조] 동적메모리를 구현하고 출력하는 소스코드2025.05.051. 동적 메모리 할당 이 코드는 동적 메모리 할당을 사용하여 구조체 배열을 생성하고 값을 할당한 후 출력하는 예제입니다. malloc() 함수를 사용하여 메모리를 동적으로 할당하고, 구조체 포인터 p를 통해 메모리에 접근하여 값을 설정합니다. 마지막으로 free() 함수를 사용하여 동적으로 할당된 메모리를 해제합니다. 1. 동적 메모리 할당 동적 메모리 할당은 프로그램 실행 중에 필요한 메모리 공간을 동적으로 할당하는 기능입니다. 이를 통해 프로그램은 실행 시간에 메모리 요구량을 유연하게 조절할 수 있습니다. 동적 메모리 할당은 ...2025.05.05
-
건국대학교 객체지향프로그래밍_3주차_랩실습보고서2025.05.011. 객체지향프로그래밍 이 보고서는 건국대학교 객체지향프로그래밍 수업의 3주차 랩실습 내용을 다루고 있습니다. 주요 내용은 파일로부터 동적 메모리 할당, 메모리 출력 및 저장, 메모리 정리 등입니다. 이를 통해 C++의 동적 메모리 관리 기능을 실습하고 이해할 수 있습니다. 1. 객체지향프로그래밍 객체지향프로그래밍은 소프트웨어 개발에 있어 매우 중요한 패러다임입니다. 이 방식은 현실 세계의 개체를 모방하여 프로그램을 구축하는 것으로, 코드의 재사용성, 유지보수성, 확장성 등 많은 장점을 가지고 있습니다. 객체지향 프로그래밍은 클래스...2025.05.01
-
메모리 단편화(Memory Fragmentation)의 개념과 해결 방안2025.01.161. 메모리 단편화의 개념 메모리 단편화는 사용가능한 메모리가 충분하지만 메모리 공간이 조각으로 분할되어 프로그램이 필요한 만큼의 메모리 공간을 할당 받지 못하는 상태를 말합니다. 메모리 단편화의 원인으로는 메모리 할당 정책이나 알고리즘이 메모리를 비효율적으로 사용하게 되는 경우, 메모리 할당 및 해제 과정에서 메모리 블록들이 불연속적으로 배치되는 경우, 메모리를 할당하고 해제하는 순서나 크기가 문제가 되는 경우, 프로그램 실행 중에 메모리 사용량이 바뀌는 경우 등 다양한 원인들이 있습니다. 2. 내부 단편화와 외부 단편화의 개념 ...2025.01.16
-
프로세스 개념을 설명하고 처리방식에 대해 설명하시오2025.01.271. 프로세스의 정의 프로세스는 실행 중인 프로그램을 나타내며, 프로그램의 코드뿐만 아니라 실행에 필요한 데이터와 상태 정보도 포함하는 독립적인 실행 단위입니다. 각 프로세스는 고유한 주소 공간을 가지며, 다른 프로세스와 분리된 환경에서 작동합니다. 프로세스는 여러 가지 상태를 가지며, 일반적으로 생성, 준비, 실행, 대기, 종료의 상태로 나뉩니다. 운영체제는 이러한 프로세스의 상태를 관리하고 전환하는 역할을 합니다. 2. 프로세스 관리 기법 프로세스 관리 기법은 운영체제가 시스템 자원을 효율적으로 분배하고, 여러 프로세스가 원활하...2025.01.27
-
C언어에서 메모리를 효율적으로 활용하기 위한 포인터의 활용2025.05.061. 포인터 정의 포인터는 변수의 주소를 나타내는 변수이다. 변수는 메모리 상의 어떤 위치에 할당되며, 이 위치를 주소(address)라고 한다. 포인터는 이러한 변수의 주소를 저장하고, 이 주소를 통해 변수에 접근할 수 있다. 포인터를 선언할 때는 포인터 변수의 자료형을 지정해야 하며, 포인터 변수의 자료형은 포인터가 가리키는 변수의 자료형과 일치해야 한다. 2. 포인터 변수 정의와 예제 포인터 변수는 메모리의 주소를 저장하는 변수이다. 포인터 변수를 사용하면 변수의 값을 직접 변경하거나, 함수의 인자로 포인터를 사용하여 함수 외...2025.05.06
-
운영체제의 메모리 관리2025.01.291. 물리적 메모리 구성과 구조 운영체제에서 물리적 메모리는 컴퓨터 하드웨어가 제공하는 연속적인 주소 공간으로, 주기억장치(RAM)로 구현된다. 물리적 메모리는 데이터를 저장하고 명령어를 실행하기 위한 기본 저장 공간이다. 하드웨어적으로 연속된 배열 형태로 제공되지만, 운영체제는 이를 효율적으로 관리하기 위해 저주소 공간과 고주소 공간으로 나눈다. 운영체제는 MMU(Memory Management Unit)라는 하드웨어를 통해 물리적 메모리를 관리한다. 2. 주소 변환과 메모리 보호 운영체제는 논리적 주소와 물리적 주소를 구분하여 ...2025.01.29
-
운영체제 ) 가상 메모리 관리 기법의 기본 동작 원리와 페이징 기법과 세그먼트 기법, 그리고 구역성(Locality)이 페이징 기법에서 가지는 중요한 의미에 대해서 조사하시오.2025.05.131. 가상 메모리 관리 기법의 기본 동작 원리 컴퓨터는 프로그램을 수행하기 위해 프로그램을 메인 메모리(주기억장치)에 탑재해야 한다. 그러나 실제 장치의 물리적인 메모리 용량에는 한계가 있기 마련이고, 또 프로그램을 실행할 때 프로그램 전체를 동시에 실행하는 경우도 없다. 이러한 상황에서 컴퓨터 공학자들은 좀 더 효율적인 컴퓨터 사용을 위해 당장 실행하는 프로그램의 일부분만 메인 메모리에 저장하고 필요할 때마다 나머지 부분을 하드 디스크와 같은 보조 장치에서 불러오는 메모리 관리 기법을 떠올렸고, 이를 가상 메모리 관리 기법이라고 ...2025.05.13
-
자료구조_1차원 배열과 2차원 배열의 차이점과 배열이 가지는 장단점에 대하여2025.04.271. 배열 배열은 같은 자료형의 데이터를 메모리상에 연속적으로 저장하는 자료형입니다. 1차원 배열은 하나의 인덱스로 구성되며, 2차원 배열은 행과 열을 나타내는 두 개의 인덱스로 구성됩니다. 1차원 배열과 2차원 배열의 차이점은 인덱스의 개수와 메모리 할당 방식에 있습니다. 1차원 배열은 행 단위로 메모리가 할당되지만, 2차원 배열은 행 우선 또는 열 우선 방식으로 메모리가 할당될 수 있습니다. 이에 따라 메모리 사용량과 접근 속도에 차이가 있습니다. 2. 구조체 구조체는 서로 다른 자료형의 데이터를 하나의 그룹으로 묶은 자료형입니...2025.04.27