
총 67개
-
운영체제의 실제 메모리 구성 및 물리적 메모리 관리2025.01.271. 메모리 관리 개요 운영체제의 핵심 역할 중 하나는 시스템의 메모리를 효율적으로 관리하는 것입니다. 메모리는 컴퓨터에서 가장 중요한 자원 중 하나로, 이를 효과적으로 관리하지 못하면 성능 저하뿐만 아니라 여러 가지 문제가 발생할 수 있습니다. 이를 방지하기 위해 운영체제는 다양한 메모리 관리 기법을 활용하여 자원을 최적화하고 있습니다. 2. 실제 메모리의 구성 방식 컴퓨터 시스템에서 메모리는 주로 RAM(Random Access Memory)을 활용하며, 이는 CPU가 빠르게 접근할 수 있는 저장 공간으로 작동합니다. 실제 메모...2025.01.27
-
운영체제 챕터8 레포트 과제제출 시험대비2025.05.031. 요구 페이징 요구 페이징의 이슈에는 페이지 부재, 유효 접근 시간, 페이지 대치 등이 있다. 페이지 부재를 해결하기 위해 FIFO(선입선출 대치)와 OPT(최적 페이지 대치) 알고리즘이 있다. FIFO는 이해와 구현이 쉬운 반면 성능이 좋지 않을 수 있고, OPT는 이상적인 알고리즘이지만 현실적인 구현이 어렵다. 이를 보완한 LRU(최소 사용 대치) 알고리즘은 과거 데이터를 이용해 미래를 예측하는 통계적 개념으로, 과거 오랫동안 사용하지 않은 페이지를 대치한다. 2. 페이징 시스템 페이징 시스템은 가상주소, 페이지 테이블, 물...2025.05.03
-
메시지 큐에서 수신이 없을 때 시스템 메모리에 미치는 영향과 해결 방안2025.01.131. 메모리 누수 메시지 큐에 지속적으로 메시지를 등록하는 경우, 메모리 누수가 발생할 수 있습니다. 메모리를 해제하지 않은 상태에서 계속해서 메모리를 사용하게 되어 시스템 자원이 낭비됩니다. 이는 성능 저하로 이어질 수 있는 치명적인 문제입니다. 2. 메모리 사용량 증가 지속적인 메시지 등록으로 인해 메모리에 메시지가 계속 쌓이게 됩니다. 이로 인해 메모리 사용량이 크게 증가하게 되며, 가용 메모리 부족으로 시스템이 중단되거나 성능이 저하될 수 있습니다. 메모리 부족은 다른 시스템에도 영향을 미칠 수 있는 심각한 문제입니다. 3....2025.01.13
-
운영체제 RoundRobin Scheduling 구현 과제2025.04.281. PCB 구조체 정의 PCB 구조체의 멤버 변수로는 프로세스 ID, 실행 시간, 생성 시간, 잔여 시간이 있습니다. 프로세스 ID는 중복되지 않으며 우선순위는 존재하지 않습니다. 2. PCB 구조체의 할당, 초기화, 반환 프로세스 생성 시 사용자로부터 프로세스 ID, 실행 시간, 생성 시간을 입력받아 PCB 구조체를 생성하고 PCB 리스트에 연결합니다. 프로세스 종료 시 해당 PCB를 PCB 리스트와 준비 리스트에서 삭제합니다. 3. 라운드로빈 스케줄링 준비 리스트의 프로세스를 시간 순서대로 실행합니다. 프로세스의 잔여 시간이 ...2025.04.28
-
운영체제 - 기억장치의 개념과 기억장치의 스케줄링에 대하여 설명하시오2025.01.151. 기억장치의 개념 기억장치는 컴퓨터 시스템에서 데이터를 저장하고 접근하는 데 사용되는 하드웨어 구성 요소이다. 기억장치는 주로 주기억장치(메인 메모리)와 보조기억장치(보조 저장장치)로 구분된다. 주기억장치는 컴퓨터가 실행 중인 프로그램과 데이터에 빠르게 접근할 수 있도록 도와주며, 보조기억장치는 데이터와 프로그램을 장기적으로 저장하는 데 사용된다. 기억장치는 데이터 접근 속도와 용량에 따라 계층적으로 구성된다. 2. 기억장치의 스케줄링 기억장치 스케줄링은 컴퓨터 시스템에서 메모리 자원을 효율적으로 할당하고 관리하는 방법을 의미한...2025.01.15
-
재귀함수와 포인터의 개념 및 활용2025.01.191. 재귀함수 재귀함수는 자기 자신을 다시 호출하는 함수로, 주어진 문제를 더 작은 하위 문제로 분해하여 해결하는 방식으로 동작합니다. 재귀함수는 종료 조건을 명시적으로 정의해야 하며, 이 조건이 충족될 때 함수 호출을 중단하고 반환값을 계산합니다. 재귀함수는 분할 정복 알고리즘, 백트래킹, 데이터 구조 순회, 수학적 계산 및 문제 해결, 문자열과 배열 처리 등 다양한 분야에서 활용됩니다. 2. 포인터 포인터는 메모리의 주소를 저장하는 변수로, C언어에서 메모리 관리와 복잡한 데이터 구조 구현에 중요한 역할을 합니다. 포인터는 메모...2025.01.19
-
프로세스 개념을 설명하고 처리방식에 대해 설명하시오2025.01.271. 프로세스의 정의 프로세스는 실행 중인 프로그램을 나타내며, 프로그램의 코드뿐만 아니라 실행에 필요한 데이터와 상태 정보도 포함하는 독립적인 실행 단위입니다. 각 프로세스는 고유한 주소 공간을 가지며, 다른 프로세스와 분리된 환경에서 작동합니다. 프로세스는 여러 가지 상태를 가지며, 일반적으로 생성, 준비, 실행, 대기, 종료의 상태로 나뉩니다. 운영체제는 이러한 프로세스의 상태를 관리하고 전환하는 역할을 합니다. 2. 프로세스 관리 기법 프로세스 관리 기법은 운영체제가 시스템 자원을 효율적으로 분배하고, 여러 프로세스가 원활하...2025.01.27
-
프로세스 개념을 설명하고 처리방식에 대해 설명하시오2025.01.171. 프로세스의 정의 프로세스는 실행 중인 프로그램을 의미하며, 프로그램의 코드와 프로그램 실행에 필요한 데이터 및 상태 정보를 포함합니다. 컴퓨터 시스템에서 프로세스는 독립적인 실행 단위로 간주되며, 각 프로세스는 고유한 주소 공간을 가지며 다른 프로세스와 분리된 환경에서 실행됩니다. 2. 프로세스 관리 기법 프로세스 관리 기법은 운영체제가 시스템 자원을 효율적으로 분배하고 각 프로세스가 원활하게 실행될 수 있도록 하는 데 중요한 역할을 합니다. 주요 프로세스 관리 기법으로는 스케줄링, 메모리 관리, 동기화와 통신이 있습니다. 3...2025.01.17
-
방통대 방송대 C++프로그래밍 출석수업과제물 A+2025.01.251. C++ 프로그래밍 이 프레젠테이션은 C++ 프로그래밍 과제물에 대한 내용을 다루고 있습니다. 여기에는 C++ 기초 프로그래밍 예제, 배열 최댓값 구하기, 포인터 사용, 동적 메모리 할당, 참조 활용, 함수 활용 등 다양한 C++ 프로그래밍 기법이 소개되어 있습니다. 2. 객체 지향 프로그래밍 이 프레젠테이션에는 C++ 클래스 사용 예제가 포함되어 있습니다. 'CppBeginner' 클래스를 정의하고 'hello()' 메서드를 구현하는 등 객체 지향 프로그래밍 기법이 활용되고 있습니다. 3. 배열 및 데이터 구조 프레젠테이션에는...2025.01.25
-
운영체제 - 프로세스와 스케줄링2025.05.161. 프로세스의 개념과 정의 프로세스는 컴퓨터에서 연속적으로 실행 중인 프로그램을 말한다. 프로세스는 스케줄링의 대상이 되는 작업이라고 볼 수 있으며, 프로세스의 메모리 구조는 스택, 힙, 데이터, 코드로 구성되어 있다. 프로세스는 커널 프로세스와 사용자 프로세스로 분류할 수 있다. 2. 프로세스의 상태 프로세스의 상태에는 생성, 준비, 실행, 대기, 대기지연, 준비지연, 종료 등이 있다. 프로세스의 상태 전이는 Dispatch, Timeout, Block, Wake up, Swap-out, Swap-in 등의 과정을 통해 이루어진...2025.05.16