
총 136개
-
운영체제의 메모리 관리2025.01.171. 메모리 메모리는 프로그램이 실행되고 데이터가 저장되는 공간이다. 물리적 메모리와 가상 메모리로 구분되며, 주소 지정 방식으로 페이징 기법과 세그먼테이션 기법이 있다. 물리적 메모리는 RAM으로 구성되고, 가상 메모리는 하드 디스크를 이용해 RAM처럼 사용할 수 있게 하는 기술이다. 2. 운영체제의 메모리 관리 운영체제는 메모리 상태 점검, 프로세스 할당 결정, 메모리 할당과 회수 방법 결정 등의 기능을 통해 메모리를 효율적으로 관리한다. 물리적 메모리 관리는 연속 할당 방식(고정 분할, 가변 분할)과 분산 할당 방식(페이징, ...2025.01.17
-
운영체제의 실제 메모리 구성과 물리적 메모리 관리2025.01.181. 메모리의 구조 물리적 메모리와 가상 메모리의 차이를 설명하고, 주 메모리와 보조 메모리의 특성을 설명한다. 2. 메모리 관리 전략 연속 메모리 할당과 비연속 메모리 할당(페이징, 세그멘테이션)의 장단점을 설명하고, 메모리 할당 정책(최초 적합, 최적 적합, 최악 적합)과 스와핑, 프레임 할당 알고리즘에 대해 설명한다. 3. 운영체제의 메모리 관리 역할 운영체제가 제한된 메모리 자원을 효율적으로 활용하기 위해 다양한 메모리 관리 전략과 알고리즘을 적용하는 것을 설명한다. 1. 메모리의 구조 메모리는 컴퓨터 시스템의 핵심 구성 요...2025.01.18
-
[자료구조] 동적메모리를 구현하고 출력하는 소스코드2025.05.051. 동적 메모리 할당 이 코드는 동적 메모리 할당을 사용하여 구조체 배열을 생성하고 값을 할당한 후 출력하는 예제입니다. malloc() 함수를 사용하여 메모리를 동적으로 할당하고, 구조체 포인터 p를 통해 메모리에 접근하여 값을 설정합니다. 마지막으로 free() 함수를 사용하여 동적으로 할당된 메모리를 해제합니다. 1. 동적 메모리 할당 동적 메모리 할당은 프로그램 실행 중에 필요한 메모리 공간을 동적으로 할당하는 기능입니다. 이를 통해 프로그램은 실행 시간에 메모리 요구량을 유연하게 조절할 수 있습니다. 동적 메모리 할당은 ...2025.05.05
-
운영체제의 메모리 구성 및 메모리 자원의 관리2025.01.171. 메모리 계층구조 메모리는 컴퓨터의 기억을 담당하는 것으로 상태나 명령어 등을 기록하는 장치이다. 메모리는 속도와 용량에 따라 계층 구조를 이루고 있으며, 레지스터, 캐시, 메인메모리, 보조기억장치 순으로 용량이 커지고 속도가 느려진다. 메모리 계층 구조는 지역성을 최대한 활용하여 시스템 성능을 향상시킨다. 2. 메모리 관리 메모리 관리는 자원의 효율적인 사용 및 프로세스 간의 격리 보호, 단편화 문제 해결 등을 위해 필요하다. 프로세스의 주소는 논리적 주소와 물리적 주소로 나뉘며, 이러한 논리적 주소와 물리적 주소의 연결(메모...2025.01.17
-
사용자가 입력한 수를 계속 더하는 프로그램을 배열과 연결리스트로 각각 구현했을 때 장단점 비교 및 설명2025.01.191. 배열을 사용한 프로그램 구현 배열을 사용한 프로그램은 고정된 크기의 메모리 블록에 데이터를 저장한다. 배열은 정적 메모리 할당을 통해 메모리를 관리하며, 인덱스를 통해 각 요소에 빠르게 접근할 수 있다. 이로 인해 특정 위치의 값을 읽거나 쓰는 작업이 매우 효율적이다. 그러나 배열의 크기를 동적으로 조절할 수 없다는 단점이 있다. 2. 연결리스트를 사용한 프로그램 구현 연결리스트를 사용한 프로그램은 동적으로 메모리를 할당하여 데이터를 저장한다. 연결리스트는 각 노드가 데이터와 다음 노드를 가리키는 포인터를 포함하고 있어, 새로...2025.01.19
-
단편화의 의미와 극복 방법, 내부 단편화와 외부 단편화의 차이, 배치 전략 조사2025.01.181. 단편화의 의미와 극복 방법 컴퓨터 과학에서 단편화는 메모리나 스토리지의 큰 블록이 더 작고 연속적이지 않은 블록으로 분할된 상태를 의미합니다. 이러한 단편화는 내부 단편화와 외부 단편화로 구분됩니다. 내부 단편화는 프로세스에 메모리 블록이 할당될 때 발생하며, 외부 단편화는 전체적으로 사용 가능한 메모리 공간이 충분함에도 불구하고 인접 공간이 충분하지 않은 현상입니다. 단편화를 방지하기 위해서는 메모리 관리 기술 사용, 버디 메모리 할당 등의 방법을 고려할 수 있습니다. 2. 내부 단편화와 외부 단편화의 차이 내부 단편화는 프...2025.01.18
-
자료구조_1차원 배열과 2차원 배열의 차이점과 배열이 가지는 장단점에 대하여2025.04.271. 배열 배열은 같은 자료형의 데이터를 메모리상에 연속적으로 저장하는 자료형입니다. 1차원 배열은 하나의 인덱스로 구성되며, 2차원 배열은 행과 열을 나타내는 두 개의 인덱스로 구성됩니다. 1차원 배열과 2차원 배열의 차이점은 인덱스의 개수와 메모리 할당 방식에 있습니다. 1차원 배열은 행 단위로 메모리가 할당되지만, 2차원 배열은 행 우선 또는 열 우선 방식으로 메모리가 할당될 수 있습니다. 이에 따라 메모리 사용량과 접근 속도에 차이가 있습니다. 2. 구조체 구조체는 서로 다른 자료형의 데이터를 하나의 그룹으로 묶은 자료형입니...2025.04.27
-
c언어로 쉽게 풀어쓴 자료구조 개정 3판 3장 연습문제 (해설 포함)2025.05.141. 2차원 배열의 메모리 크기 2차원 배열이 메모리에서 차지하는 크기는 행의 개수와 열의 개수, 그리고 각 요소의 크기를 곱하여 계산할 수 있다. 문제에서 제시된 10행 20열의 int형 2차원 배열은 10 x 20 x 4 = 800바이트의 크기를 차지한다. 2. 배열의 시작 주소 배열의 시작 주소는 배열의 첫 번째 요소가 저장되는 공간의 주소이다. 문제에서 배열의 첫 번째 요소가 1000번지에 저장된다고 했으므로, 10번째 요소는 1000 + (4 x 10) = 1040번지에 저장된다. 3. 배열의 크기 비교 배열의 크기는 각 ...2025.05.14
-
건국대학교 객체지향프로그래밍_3주차_랩실습보고서2025.05.011. 객체지향프로그래밍 이 보고서는 건국대학교 객체지향프로그래밍 수업의 3주차 랩실습 내용을 다루고 있습니다. 주요 내용은 파일로부터 동적 메모리 할당, 메모리 출력 및 저장, 메모리 정리 등입니다. 이를 통해 C++의 동적 메모리 관리 기능을 실습하고 이해할 수 있습니다. 1. 객체지향프로그래밍 객체지향프로그래밍은 소프트웨어 개발에 있어 매우 중요한 패러다임입니다. 이 방식은 현실 세계의 개체를 모방하여 프로그램을 구축하는 것으로, 코드의 재사용성, 유지보수성, 확장성 등 많은 장점을 가지고 있습니다. 객체지향 프로그래밍은 클래스...2025.05.01
-
[자료구조] 구조체 배열을 이용한 추가 삭제 SUM을 구현한 소스코드2025.05.051. 자료구조 이 코드는 배열을 이용한 리스트 ADT(Abstract Data Type)를 구현한 것입니다. 구조체 ArrayListType을 정의하고, 초기화, 추가, 삭제, 합계 등의 기능을 구현하고 있습니다. 배열의 크기는 MAX_LIST_SIZE로 정의되어 있으며, 배열의 길이를 나타내는 length 변수를 사용하여 리스트의 크기를 관리합니다. 이를 통해 리스트의 기본적인 CRUD(Create, Read, Update, Delete) 연산을 수행할 수 있습니다. 2. 배열 이 코드에서는 배열을 사용하여 리스트를 구현하고 있습...2025.05.05