총 54개
-
운영체제의 메모리 관리2025.01.171. 메모리 메모리는 프로그램이 실행되고 데이터가 저장되는 공간이다. 물리적 메모리와 가상 메모리로 구분되며, 주소 지정 방식으로 페이징 기법과 세그먼테이션 기법이 있다. 물리적 메모리는 RAM으로 구성되고, 가상 메모리는 하드 디스크를 이용해 RAM처럼 사용할 수 있게 하는 기술이다. 2. 운영체제의 메모리 관리 운영체제는 메모리 상태 점검, 프로세스 할당 결정, 메모리 할당과 회수 방법 결정 등의 기능을 통해 메모리를 효율적으로 관리한다. 물리적 메모리 관리는 연속 할당 방식(고정 분할, 가변 분할)과 분산 할당 방식(페이징, ...2025.01.17
-
건국대학교 객체지향프로그래밍_3주차_랩실습보고서2025.05.011. 객체지향프로그래밍 이 보고서는 건국대학교 객체지향프로그래밍 수업의 3주차 랩실습 내용을 다루고 있습니다. 주요 내용은 파일로부터 동적 메모리 할당, 메모리 출력 및 저장, 메모리 정리 등입니다. 이를 통해 C++의 동적 메모리 관리 기능을 실습하고 이해할 수 있습니다. 1. 객체지향프로그래밍 객체지향프로그래밍은 소프트웨어 개발에 있어 매우 중요한 패러다임입니다. 이 방식은 현실 세계의 개체를 모방하여 프로그램을 구축하는 것으로, 코드의 재사용성, 유지보수성, 확장성 등 많은 장점을 가지고 있습니다. 객체지향 프로그래밍은 클래스...2025.05.01
-
C언어 1 - 재귀함수와 포인터의 개념 및 활용2025.01.151. 재귀함수 재귀함수는 함수가 자기 자신을 호출하여 문제를 해결하는 기법입니다. 이 기법은 큰 문제를 작은 문제로 나누어 해결할 수 있게 해주며, 특히 반복적이고 계층적인 구조의 문제를 해결하는 데 유용합니다. 재귀함수를 사용할 때는 기본 조건(base case)과 재귀 조건(recursive case)을 명확히 정의해야 합니다. 재귀함수의 대표적인 사용 사례로는 팩토리얼 계산, 피보나치 수열 계산, 트리 탐색 등이 있습니다. 2. 포인터 포인터는 다른 변수의 메모리 주소를 저장하는 변수로, 간접적으로 변수에 접근하고 조작할 수 ...2025.01.15
-
운영체제 LRU (Least Recently Used) 알고리즘 구현 과제2025.04.281. LRU (Least Recently Used) 알고리즘 LRU (Least Recently Used) 알고리즘은 운영체제에서 메모리 페이지 교체 정책으로 사용되는 알고리즘입니다. 이 알고리즘은 가장 오랫동안 참조되지 않은 페이지를 교체하여 페이지 폴트를 최소화하는 것을 목표로 합니다. 이 프로그램은 C로 작성되었으며 Doubly Linked List로 LRU 알고리즘을 구현하고 있습니다. 페이지 번호를 읽어와 메모리에 올릴 수 있는 최대 페이지 개수를 고려하여 LRU 알고리즘을 적용하고 있으며, 페이지 참조 시마다 연결 리스트...2025.04.28
-
운영체제의 실제 메모리 구성 및 물리적 메모리 관리2025.01.271. 메모리 관리 개요 운영체제의 핵심 역할 중 하나는 시스템의 메모리를 효율적으로 관리하는 것입니다. 메모리는 컴퓨터에서 가장 중요한 자원 중 하나로, 이를 효과적으로 관리하지 못하면 성능 저하뿐만 아니라 여러 가지 문제가 발생할 수 있습니다. 이를 방지하기 위해 운영체제는 다양한 메모리 관리 기법을 활용하여 자원을 최적화하고 있습니다. 2. 실제 메모리의 구성 방식 컴퓨터 시스템에서 메모리는 주로 RAM(Random Access Memory)을 활용하며, 이는 CPU가 빠르게 접근할 수 있는 저장 공간으로 작동합니다. 실제 메모...2025.01.27
-
캐시 기억장치의 필요성과 캐시 기억장치 설계 시 가장 중요하다고 생각하는 사항2025.05.021. 캐시 기억장치의 필요성 컴퓨터의 주요 장치 중 하나인 기억장치는 필요한 정보를 보관 및 저장하는 역할을 한다. 기억장치는 컴퓨터 동작 시 프로그램의 명령어나 처리할 데이터를 저장하며 기억장치의 용량과 처리 속도는 컴퓨터의 성능에 큰 영향을 끼친다. 이때, 주기억장치는 중앙처리 장치에 비해 속도가 느리기 때문에 속도 차이가 나게 된다. 캐시 기억장치는 중앙 처리 장치와 그에 비해 속도가 느린 주기억장치 사이의 속도 차이를 극복하기 위해 사용되는 기억장치이다. 2. 캐시 기억장치 설계 시 가장 중요하다고 생각하는 사항 캐시기억장치...2025.05.02
-
단편화의 의미와 극복 방법, 내부 단편화와 외부 단편화의 차이, 배치 전략 조사2025.01.181. 단편화의 의미와 극복 방법 컴퓨터 과학에서 단편화는 메모리나 스토리지의 큰 블록이 더 작고 연속적이지 않은 블록으로 분할된 상태를 의미합니다. 이러한 단편화는 내부 단편화와 외부 단편화로 구분됩니다. 내부 단편화는 프로세스에 메모리 블록이 할당될 때 발생하며, 외부 단편화는 전체적으로 사용 가능한 메모리 공간이 충분함에도 불구하고 인접 공간이 충분하지 않은 현상입니다. 단편화를 방지하기 위해서는 메모리 관리 기술 사용, 버디 메모리 할당 등의 방법을 고려할 수 있습니다. 2. 내부 단편화와 외부 단편화의 차이 내부 단편화는 프...2025.01.18
-
os 기출문제2025.01.201. Process Synchronization 1. 현재 count 변수의 값이 5이고, 두 프로세스 producer와 consumer가 각각 다음과 같이 (interleaved) 실행된다고 할 때, 마지막으로 저장되는 counter 변수의 값은 6입니다. 2. 다른 프로세스(또는 스레드)들과 공유하는 자원(변수, 파일 등)을 다루는 코드 영역을 일컫는 용어는 critical section입니다. 3. non-preemptive scheduling을 설명하는 말이 아닌 것은 2) The scheduler can interrupt ...2025.01.20
-
운영체제의 메모리 구성 및 메모리 자원의 관리2025.01.171. 메모리 계층구조 메모리는 컴퓨터의 기억을 담당하는 것으로 상태나 명령어 등을 기록하는 장치이다. 메모리는 속도와 용량에 따라 계층 구조를 이루고 있으며, 레지스터, 캐시, 메인메모리, 보조기억장치 순으로 용량이 커지고 속도가 느려진다. 메모리 계층 구조는 지역성을 최대한 활용하여 시스템 성능을 향상시킨다. 2. 메모리 관리 메모리 관리는 자원의 효율적인 사용 및 프로세스 간의 격리 보호, 단편화 문제 해결 등을 위해 필요하다. 프로세스의 주소는 논리적 주소와 물리적 주소로 나뉘며, 이러한 논리적 주소와 물리적 주소의 연결(메모...2025.01.17
-
컴퓨터구조_컴퓨터 내부에서 사용하는 명령어 사이클의 4가지 단계에 대해서 비교 설명하시오.2025.01.291. 명령어 인출 단계 (Fetch) 명령어 사이클의 첫 번째 단계는 명령어 인출(fetch) 단계이다. 이 단계는 CPU가 메모리에서 실행할 명령어를 불러오는 과정이다. 현대 컴퓨터에서 CPU는 프로그램 카운터(PC)를 통해 다음에 실행할 명령어의 위치를 추적한다. 프로그램 카운터는 메모리 주소를 가리키며, 이를 바탕으로 명령어를 메모리에서 인출하여 명령어 레지스터(IR)에 저장한다. 이때 CPU는 주소 버스를 통해 명령어가 저장된 메모리 주소를 지정하고, 데이터 버스를 통해 해당 명령어를 인출하여 명령어 레지스터로 전달한다. 2...2025.01.29
