LRU, LFU, 페이지 폴트(Page Fault)
·
Computer Science/Computer Basic
운영체제 LRU, LFU 페이지 교체 알고리즘 계산 방법 (정보처리기사 실기)정보처리기사 실기에서 운영체제 문제는 단순 개념보다 계산 문제가 자주 출제됩니다.특히 LRU(Least Recently Used), LFU(Least Frequently Used), 페이지 폴트(Page Fault)는 거의 필수로 알아야 하는 개념입니다.이번 글에서는 정처기 기준으로 문제를 푸는 방법을 중심으로 설명하겠습니다.페이지(Page)란?페이지(Page)는 프로그램을 일정한 크기로 나눈 단위입니다.운영체제는 프로그램 전체를 메모리에 올리지 않고 필요한 페이지만 메모리(RAM)에 적재하여 실행합니다.예를 들어 프로그램이 다음과 같다면A B C D E F G H I J운영체제는 다음과 같이 페이지 단위로 관리합니다.Page1..
C언어 포인터 쉽게 이해하기
·
Programming/C
C언어를 공부하다 보면 초반에 가장 많이 막히는 개념이 바로 포인터다.처음에는 *, &, c# C언어 포인터 쉽게 이해하기 | 주소 연산자, 간접 참조, 배열 포인터까지 그림으로 정리C언어를 공부하다 보면 초반에 가장 많이 막히는 개념이 바로 포인터다.처음에는 *, &, char *p, int *p, printf("%s", p) 같은 문법이 한꺼번에 나오기 때문에 헷갈리기 쉽다.하지만 포인터의 핵심은 생각보다 단순하다.포인터는 “값”이 아니라 “주소”를 저장하는 변수다.이번 글에서는 C언어 포인터를 처음 배우는 사람도 이해할 수 있도록, 메모리 그림과 예제 코드로 하나씩 정리해보려고 한다.1. 포인터란 무엇인가?일반 변수는 값을 저장한다.int a = 10;위 코드는 a라는 변수에 10이라는 값을 저장한..
C 언어 기초 - 1
·
Programming/C
C 언어 기초 정리C 언어는 오래된 프로그래밍 언어이지만, 지금도 운영체제, 임베디드, 시스템 프로그래밍, 알고리즘 학습 등 다양한 분야에서 사용되고 있다.처음 배우기에는 다소 딱딱하게 느껴질 수 있지만, 컴퓨터가 메모리와 데이터를 어떻게 다루는지 이해하는 데 매우 좋은 언어다.이번 글에서는 C 언어를 처음 공부할 때 알아야 하는 기본 개념들을 정리해보려고 한다.1. C 언어란?C 언어는 1970년대에 만들어진 프로그래밍 언어로, 하드웨어와 가까운 수준에서 동작할 수 있는 특징을 가진다.Python이나 JavaScript 같은 언어보다 문법이 엄격하고 직접 메모리를 다루는 개념이 많지만, 그만큼 컴퓨터의 동작 원리를 이해하기 좋다.C 언어는 다음과 같은 곳에서 많이 사용된다.운영체제 개발임베디드 시스템 ..
[codex] Error: Operation not permitted (os error 1)
·
AI
Codex를 사용하던 중 아래와 같은 에러가 발생했다.Error: Operation not permitted (os error 1)처음에는 Codex 자체 문제처럼 보였지만, 실제로는 터미널 세션이나 macOS 권한 상태가 꼬이면서 발생한 문제였다.원인이 에러는 보통 Codex가 파일을 수정하거나 명령어를 실행하려고 할 때, 현재 환경에서 해당 작업이 허용되지 않아 발생한다.대표적인 원인은 다음과 같다.터미널 세션의 권한 상태가 꼬인 경우Codex 프로세스가 이전 권한 상태로 실행 중인 경우macOS 보안 권한이 현재 터미널 세션에 제대로 반영되지 않은 경우파일 또는 디렉터리 접근 권한이 부족한 경우작업 중인 프로젝트 경로가 Desktop, Documents, Downloads, iCloud Drive ..
[Kubernetes] Ingress
·
Kubernetes
트래픽을 클러스터로 가져오는 라우터/프록시의 역할을 한다.라우팅하는 규칙을 가지고 있다.Ingress를 관리하기 위해 Ingress Controller가 필요하다.Ingress Controller는 Ingress 리소스를 관리한다.Ingress에는 rule이 포함되어 있고 Ingress Controller는 rule을 적용한다.ingress Controller에는 많은 종류가 있지만 nginx로 진행한다 Nginx ingress Controller기존 클러스터를 삭제하자kind delete cluster --name dev-cluster그 이후 새로운 클러스터를 생성한다.# 01-cluster.yamlkind: ClusterapiVersion: kind.x-k8s.io/v1alpha4name: dev-c..
얼은펭귄
SY Storage