
총 46개
-
컴퓨터 시스템의 구조와 운영체제2025.01.281. 컴퓨터 시스템의 기본 구조 컴퓨터 시스템은 데이터를 입력받아 처리한 뒤 출력하는 과정을 수행하는 전자 장치이다. 이를 가능하게 하는 핵심 구성 요소는 하드웨어(CPU, 메모리, 입출력장치, 버스)와 소프트웨어(응용 소프트웨어, 시스템 소프트웨어)로 구성된다. 2. 운영체제의 주요 기능 운영체제는 컴퓨터 시스템에서 필수적인 소프트웨어로, 하드웨어를 관리하고 사용자와 시스템 간의 인터페이스 역할을 한다. 주요 기능으로는 프로세스 관리, 메모리 관리, 파일 시스템 관리, 입출력 관리, 보안 및 사용자 관리 등이 있다. 3. 컴퓨터 ...2025.01.28
-
C언어 - 포인터에 관련한 다음 물음들에 대한 답을 제시하시오2025.01.271. 포인터의 개념과 기능 포인터의 개념은 '주소를 저장하는 변수'로 여기에는 두 가지 중요한 점이 있습니다. 하나는 '주소를 저장한다'는 것이고 다른 하나는 '변수'라는 것입니다. 포인터는 정의할 때 *를 붙이며, 포인터에 어떤 주소를 넣느냐에 따라 정수형 포인터, 문자 포인터, 함수 포인터 등의 이름이 지정됩니다. 포인터는 메모리를 저장할 수 있는 특징이 있지만, 변수이기 때문에 생성만 해놓은 상태만으로는 아무것도 할 수 없습니다. 다른 변수의 메모리 주소를 대입하거나 메모리를 할당하는 함수를 사용하여 메모리를 할당받은 후, 해...2025.01.27
-
가상 메모리 소개 및 페이징 기술, 페이지 교체 알고리즘2025.01.021. 가상 메모리 가상 메모리는 컴퓨터 과학과 운영 체제의 기본 개념입니다. 이를 통해 컴퓨터는 하드 드라이브의 일부를 RAM의 확장으로 사용하여 물리 메모리(RAM)의 제한을 보완할 수 있습니다. 이 기술을 통해 효율적인 멀티태스킹이 가능해져 물리 메모리에 완전히 적합하지 않은 대규모 프로그램을 실행할 수 있습니다. 2. 페이징 기술 및 분할 페이징과 분할은 가상 메모리 구현에 사용하는 두 가지 주요 방법입니다. 페이징에서는 물리 메모리와 가상 메모리를 고정 크기의 블록으로 분할하고 가변 크기의 블록으로 분할합니다. 두 기술 모두...2025.01.02
-
운영체제 메모리 관리 레포트2025.05.021. 가상 메모리 가상 메모리는 사용자와 논리적 주소를 물리적으로 분리하여 프로세스에 주소를 지정하고 메모리 제한 없이 사용할 수 있게 해줍니다. 메모리의 일부만 적재해도 프로세스를 실행할 수 있으며, 메모리와 디스크 사이의 데이터 이동을 통해 효율적으로 메모리를 활용할 수 있습니다. 가상 메모리를 사용하면 프로그래밍이 용이해지고 프로세서 이용률과 처리율이 향상되지만, 메모리와 디스크 사이의 이동량이 증가하고 페이징 알고리즘 결정이 필요한 단점이 있습니다. 2. 매핑 방법 가상 주소와 물리적 주소를 매핑하는 방법에는 동적 주소 변환...2025.05.02
-
배열의 정의, 선언, 초기화 및 활용2025.05.051. 배열의 정의 배열은 C언어에서 연속적인 메모리 영역에 동일한 데이터 타입의 여러 요소를 저장할 수 있는 구조입니다. 배열을 사용하면 데이터를 더욱 구조화된 방식으로 저장하고 접근할 수 있습니다. 2. 1차원 배열 선언 1차원 배열을 선언하려면 데이터 타입, 배열 이름, 배열 크기를 지정해야 합니다. 예를 들어, int arr[5]는 크기가 5인 int형 1차원 배열을 선언하는 것입니다. 3. 배열 활용 사례 배열은 시계열 데이터 저장, 문자열 처리, 정렬 및 검색 알고리즘 구현, 행렬 및 벡터 연산 등 다양한 상황에서 활용됩니...2025.05.05
-
C언어에서 메모리를 효율적으로 활용하기 위한 포인터의 활용2025.05.061. 포인터 정의 포인터는 변수의 주소를 나타내는 변수이다. 변수는 메모리 상의 어떤 위치에 할당되며, 이 위치를 주소(address)라고 한다. 포인터는 이러한 변수의 주소를 저장하고, 이 주소를 통해 변수에 접근할 수 있다. 포인터를 선언할 때는 포인터 변수의 자료형을 지정해야 하며, 포인터 변수의 자료형은 포인터가 가리키는 변수의 자료형과 일치해야 한다. 2. 포인터 변수 정의와 예제 포인터 변수는 메모리의 주소를 저장하는 변수이다. 포인터 변수를 사용하면 변수의 값을 직접 변경하거나, 함수의 인자로 포인터를 사용하여 함수 외...2025.05.06
-
운영체제 ) 메모리 단편화가 무엇이고 왜 발생하는지 설명하고, 내부, 외부 단편화의 의미를 조사하시오. 그리고 내부, 외부 단편화를 해결할 수 있는 방법에 대해 논하시오.2025.01.191. 메모리 단편화 메모리 단편화는 RAM에서 메모리 공간이 작은 조각으로 나뉘어 메모리 자체에는 사용할 수 있는 공간이 충분히 존재하고 있지만 할당할 수 없는 상태를 의미한다. 이와 같은 메모리 단편화는 내부 단편화(Internal Fragmentation)와 외부 단편화(External Fragmentation)로 구분할 수 있다. 2. 내부 단편화 메모리를 할달할 때 OS에서 할당된 메모리의 공간보다 프로세스가 더 작은 공간을 사용함에 따라 낭비된 상태를 내부 단편화라 이야기 한다. 예를 들면 20MB의 메모리 크기가 주어져을...2025.01.19
-
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.291. 물리적 메모리 구성과 구조 운영체제에서 물리적 메모리는 컴퓨터 하드웨어가 제공하는 연속적인 주소 공간으로, 주기억장치(RAM)로 구현된다. 물리적 메모리는 데이터를 저장하고 명령어를 실행하기 위한 기본 저장 공간이다. 하드웨어적으로 연속된 배열 형태로 제공되지만, 운영체제는 이를 효율적으로 관리하기 위해 저주소 공간과 고주소 공간으로 나눈다. 운영체제는 MMU(Memory Management Unit)라는 하드웨어를 통해 물리적 메모리를 관리한다. 2. 주소 변환과 메모리 보호 운영체제는 논리적 주소와 물리적 주소를 구분하여 ...2025.01.29
-
시스템프로그래밍(명령어 실행 4단계 및 논리주소와 물리주소)2025.01.031. 명령어(instruction) 명령어(instruction)란 컴퓨터가 직접 실행할 수 있는 프로그램의 최소 단위를 의미합니다. 명령어는 프로세서가 외부적으로 작동하는 '판독'과 '기록' 사이클, 기억장치에서 읽은 프로그램 명령어를 '실행시키는 4단계'로 구분해서 이해할 수 있습니다. 2. 명령어 실행 4단계 명령어 실행은 '명령어 인출 → 명령어 해독 → 데이터 인출 → 명령어 실행'의 4단계로 진행되며, 각 단계별 내용이 자세히 설명되어 있습니다. 3. 물리 주소와 논리 주소 메모리의 구조는 크게 물리 주소와 논리 주소 두...2025.01.03