
총 453개
-
운영체제 ) 메모리 단편화가 무엇이고 왜 발생하는지 설명하고, 내부, 외부 단편화의 의미를 조사하시오. 그리고 내부, 외부 단편화를 해결할 수 있는 방법에 대해 논하시오.2025.01.191. 메모리 단편화 메모리 단편화는 RAM에서 메모리 공간이 작은 조각으로 나뉘어 메모리 자체에는 사용할 수 있는 공간이 충분히 존재하고 있지만 할당할 수 없는 상태를 의미한다. 이와 같은 메모리 단편화는 내부 단편화(Internal Fragmentation)와 외부 단편화(External Fragmentation)로 구분할 수 있다. 2. 내부 단편화 메모리를 할달할 때 OS에서 할당된 메모리의 공간보다 프로세스가 더 작은 공간을 사용함에 따라 낭비된 상태를 내부 단편화라 이야기 한다. 예를 들면 20MB의 메모리 크기가 주어져을...2025.01.19
-
메모리 단편화(Memory Fragmentation)의 개념과 해결 방안2025.01.161. 메모리 단편화의 개념 메모리 단편화는 사용가능한 메모리가 충분하지만 메모리 공간이 조각으로 분할되어 프로그램이 필요한 만큼의 메모리 공간을 할당 받지 못하는 상태를 말합니다. 메모리 단편화의 원인으로는 메모리 할당 정책이나 알고리즘이 메모리를 비효율적으로 사용하게 되는 경우, 메모리 할당 및 해제 과정에서 메모리 블록들이 불연속적으로 배치되는 경우, 메모리를 할당하고 해제하는 순서나 크기가 문제가 되는 경우, 프로그램 실행 중에 메모리 사용량이 바뀌는 경우 등 다양한 원인들이 있습니다. 2. 내부 단편화와 외부 단편화의 개념 ...2025.01.16
-
가상 메모리 소개 및 페이징 기술, 페이지 교체 알고리즘2025.01.021. 가상 메모리 가상 메모리는 컴퓨터 과학과 운영 체제의 기본 개념입니다. 이를 통해 컴퓨터는 하드 드라이브의 일부를 RAM의 확장으로 사용하여 물리 메모리(RAM)의 제한을 보완할 수 있습니다. 이 기술을 통해 효율적인 멀티태스킹이 가능해져 물리 메모리에 완전히 적합하지 않은 대규모 프로그램을 실행할 수 있습니다. 2. 페이징 기술 및 분할 페이징과 분할은 가상 메모리 구현에 사용하는 두 가지 주요 방법입니다. 페이징에서는 물리 메모리와 가상 메모리를 고정 크기의 블록으로 분할하고 가변 크기의 블록으로 분할합니다. 두 기술 모두...2025.01.02
-
[자료구조] 동적메모리를 구현하고 출력하는 소스코드2025.05.051. 동적 메모리 할당 이 코드는 동적 메모리 할당을 사용하여 구조체 배열을 생성하고 값을 할당한 후 출력하는 예제입니다. malloc() 함수를 사용하여 메모리를 동적으로 할당하고, 구조체 포인터 p를 통해 메모리에 접근하여 값을 설정합니다. 마지막으로 free() 함수를 사용하여 동적으로 할당된 메모리를 해제합니다. 1. 동적 메모리 할당 동적 메모리 할당은 프로그램 실행 중에 필요한 메모리 공간을 동적으로 할당하는 기능입니다. 이를 통해 프로그램은 실행 시간에 메모리 요구량을 유연하게 조절할 수 있습니다. 동적 메모리 할당은 ...2025.05.05
-
단편화의 의미와 극복 방법, 내부 단편화와 외부 단편화의 차이, 배치 전략 조사2025.01.181. 단편화의 의미와 극복 방법 컴퓨터 과학에서 단편화는 메모리나 스토리지의 큰 블록이 더 작고 연속적이지 않은 블록으로 분할된 상태를 의미합니다. 이러한 단편화는 내부 단편화와 외부 단편화로 구분됩니다. 내부 단편화는 프로세스에 메모리 블록이 할당될 때 발생하며, 외부 단편화는 전체적으로 사용 가능한 메모리 공간이 충분함에도 불구하고 인접 공간이 충분하지 않은 현상입니다. 단편화를 방지하기 위해서는 메모리 관리 기술 사용, 버디 메모리 할당 등의 방법을 고려할 수 있습니다. 2. 내부 단편화와 외부 단편화의 차이 내부 단편화는 프...2025.01.18
-
시스템프로그래밍(명령어 실행 4단계 및 논리주소와 물리주소)2025.01.031. 명령어(instruction) 명령어(instruction)란 컴퓨터가 직접 실행할 수 있는 프로그램의 최소 단위를 의미합니다. 명령어는 프로세서가 외부적으로 작동하는 '판독'과 '기록' 사이클, 기억장치에서 읽은 프로그램 명령어를 '실행시키는 4단계'로 구분해서 이해할 수 있습니다. 2. 명령어 실행 4단계 명령어 실행은 '명령어 인출 → 명령어 해독 → 데이터 인출 → 명령어 실행'의 4단계로 진행되며, 각 단계별 내용이 자세히 설명되어 있습니다. 3. 물리 주소와 논리 주소 메모리의 구조는 크게 물리 주소와 논리 주소 두...2025.01.03
-
USB 조사2025.01.241. USB(Universal Serial Bus) USB(Universal Serial Bus)는 컴퓨터와 주변기기 사이에 데이터를 주고받을 때 사용하는 버스 규격 중 하나입니다. 1990년대 후반부터 대부분의 개인용 컴퓨터에 USB 장치를 꽂을 수 있게 되면서 현재 다른 규격 버스에 비해 보급률이 매우 높습니다. USB는 컴퓨터 전원이 켜진 상태에서도 자유롭게 장치를 꽂고 뺄 수 있어 편의성이 높다는 장점이 있습니다. 2. 플래시 메모리 플래시 메모리는 데이터를 저장, 보관할 수 있는 반도체의 일종입니다. 데이터를 자유롭게 저장...2025.01.24
-
건국대학교 객체지향프로그래밍_3주차_랩실습보고서2025.05.011. 객체지향프로그래밍 이 보고서는 건국대학교 객체지향프로그래밍 수업의 3주차 랩실습 내용을 다루고 있습니다. 주요 내용은 파일로부터 동적 메모리 할당, 메모리 출력 및 저장, 메모리 정리 등입니다. 이를 통해 C++의 동적 메모리 관리 기능을 실습하고 이해할 수 있습니다. 1. 객체지향프로그래밍 객체지향프로그래밍은 소프트웨어 개발에 있어 매우 중요한 패러다임입니다. 이 방식은 현실 세계의 개체를 모방하여 프로그램을 구축하는 것으로, 코드의 재사용성, 유지보수성, 확장성 등 많은 장점을 가지고 있습니다. 객체지향 프로그래밍은 클래스...2025.05.01
-
운영체제 - 기억장치의 개념과 기억장치의 스케줄링에 대하여 설명하시오2025.01.151. 기억장치의 개념 기억장치는 컴퓨터 시스템에서 데이터를 저장하고 접근하는 데 사용되는 하드웨어 구성 요소이다. 기억장치는 주로 주기억장치(메인 메모리)와 보조기억장치(보조 저장장치)로 구분된다. 주기억장치는 컴퓨터가 실행 중인 프로그램과 데이터에 빠르게 접근할 수 있도록 도와주며, 보조기억장치는 데이터와 프로그램을 장기적으로 저장하는 데 사용된다. 기억장치는 데이터 접근 속도와 용량에 따라 계층적으로 구성된다. 2. 기억장치의 스케줄링 기억장치 스케줄링은 컴퓨터 시스템에서 메모리 자원을 효율적으로 할당하고 관리하는 방법을 의미한...2025.01.15
-
자료구조_1차원 배열과 2차원 배열의 차이점과 배열이 가지는 장단점에 대하여2025.04.271. 배열 배열은 같은 자료형의 데이터를 메모리상에 연속적으로 저장하는 자료형입니다. 1차원 배열은 하나의 인덱스로 구성되며, 2차원 배열은 행과 열을 나타내는 두 개의 인덱스로 구성됩니다. 1차원 배열과 2차원 배열의 차이점은 인덱스의 개수와 메모리 할당 방식에 있습니다. 1차원 배열은 행 단위로 메모리가 할당되지만, 2차원 배열은 행 우선 또는 열 우선 방식으로 메모리가 할당될 수 있습니다. 이에 따라 메모리 사용량과 접근 속도에 차이가 있습니다. 2. 구조체 구조체는 서로 다른 자료형의 데이터를 하나의 그룹으로 묶은 자료형입니...2025.04.27