전체 글85 OS - 시스템콜, 커널모드, 이중모드 시스템 콜 (커널 모드, 이중 모드, 인터럽트)내가 파이썬으로 open("a.txt") 한 줄을 실행하면, 그 안에서는 사용자 프로그램이 직접 할 수 없는 일이 벌어진다. 디스크라는 하드웨어를 건드리는 일은 운영체제만의 특권이기 때문이다. 사용자 프로그램이 파일을 읽고, 네트워크로 데이터를 보내고, 새 프로세스를 만드는 모든 순간, 프로그램은 운영체제 커널에게 "이 일을 대신 해 달라"고 요청한다. 이 요청의 공식 창구가 시스템 콜(System Call)이다. 본 글은 사용자 모드와 커널 모드를 가르는 이중 모드의 원리, 시스템 콜이 호출되는 과정, 그리고 그것을 떠받치는 인터럽트 메커니즘을 세심하게 정리한다(출처: 위키백과 — System call). 제가 운영체제 수업에서 strace 명령으로 간단한.. 2026. 5. 27. OS - 가상 메모리 요구 페이징 TLB 가상 메모리 (요구 페이징, TLB, 주소 변환)내 노트북의 물리 메모리는 16GB인데, 어떻게 수십 개의 프로그램이 각자 수 GB씩 쓰는 것처럼 동시에 돌아갈까. 답은 가상 메모리(Virtual Memory)다. 운영체제는 각 프로세스에게 "너는 메모리를 통째로 혼자 쓴다"는 거대한 환상을 심어 주고, 실제로는 물리 메모리와 디스크를 영리하게 오가며 그 환상을 떠받친다. 이 추상화 덕분에 프로그래머는 다른 프로세스나 물리 메모리 크기를 신경 쓰지 않고 코드를 짤 수 있다. 본 글은 가상 주소가 물리 주소로 변환되는 과정, 필요할 때만 페이지를 올리는 요구 페이징, 그리고 그 느린 변환을 캐시로 가속하는 TLB를 세심하게 정리한다(출처: 위키백과 — Virtual memory). 제가 운영체제 수업에서 .. 2026. 5. 26. DB - 백업 복구 WAL 로그 백업과 복구 (WAL, REDO·UNDO, 체크포인트)은행 시스템이 입금 처리 도중 정전으로 멈췄다고 하자. 돈은 빠져나갔는데 입금 기록이 디스크에 닿기 전이었다면, 그 돈은 어디로 사라질까. 데이터베이스가 신뢰받는 이유는 바로 이런 장애 상황에서도 데이터를 한 푼도 잃지 않고, 멈춘 지점에서 정확히 복구하는 능력에 있다. 그 능력의 핵심 엔진이 로그 기반 복구이며, 그중에서도 거의 모든 현대 데이터베이스가 쓰는 기법이 WAL(Write-Ahead Logging)이다. 본 글은 트랜잭션 장애 복구의 원리, WAL의 핵심 규칙, REDO와 UNDO의 차이, 그리고 복구 시간을 줄이는 체크포인트를 세심하게 정리한다(출처: PostgreSQL 공식 문서 — Write-Ahead Logging (WAL)). 제.. 2026. 5. 26. DB - 뷰, 저장 프로시저, 트리거 뷰와 프로시저 (트리거, 저장 프로시저, 캡슐화)데이터베이스는 단순히 데이터를 담는 창고가 아니라, 그 안에서 로직을 실행하는 작은 실행 환경이기도 하다. 복잡한 조인 쿼리를 매번 다시 쓰지 않도록 이름 붙여 저장하는 뷰, 여러 SQL 문을 묶어 함수처럼 호출하는 저장 프로시저, 그리고 특정 사건이 일어날 때 자동으로 작동하는 트리거 — 이 세 가지는 애플리케이션 코드로 흩어질 로직을 데이터베이스 안에 캡슐화하는 도구다. 본 글은 뷰의 추상화와 보안 효과, 저장 프로시저의 성능·재사용 이점, 그리고 트리거의 자동화와 그 위험성을 세심하게 정리한다(출처: 위키백과 — View (SQL)). 제가 데이터베이스 수업에서 같은 5단 조인 쿼리를 여러 화면에서 복사해 쓰다가 컬럼 하나가 바뀌자 모든 쿼리를 찾아 .. 2026. 5. 25. DB - 정규화, 함수종속, BCNF 정규화 (함수 종속, 이상 현상, BCNF)학생 성적 테이블 하나에 학생 이름·학과·학과사무실·과목·점수를 전부 욱여넣으면 처음엔 편하다. 그런데 한 학생이 다섯 과목을 들으면 그 학생의 학과사무실 정보가 다섯 번 중복 저장되고, 학과사무실이 이전하면 그 다섯 줄을 모두 고쳐야 하며, 한 줄이라도 빠뜨리면 데이터가 서로 모순된다. 이렇게 잘못 설계된 테이블이 일으키는 문제를 이상 현상(anomaly)이라 하고, 이를 함수 종속을 기준으로 테이블을 쪼개 제거하는 체계적 절차가 정규화(Normalization)다. 본 글은 이상 현상의 세 종류, 함수 종속이라는 핵심 개념, 그리고 제1정규형부터 BCNF까지의 단계를 세심하게 정리한다(출처: 위키백과 — Database normalization). 제가 데이.. 2026. 5. 25. 알고리즘 - NP 완전 계산 복잡도 NP-완전 (P-NP, 계산 복잡도, 환원)어떤 문제는 컴퓨터가 아무리 빨라져도 큰 입력에서는 사실상 풀 수 없다. 외판원이 모든 도시를 한 번씩 들러 돌아오는 최단 경로, 강의 시간표를 충돌 없이 짜는 문제, 배낭에 가치를 최대로 담는 문제 — 이들은 입력이 조금만 커져도 가능한 경우의 수가 폭발한다. 이런 "어려움"을 수학적으로 분류하는 이론이 계산 복잡도(Computational Complexity)이며, 그 한가운데에 컴퓨터 과학 최대 난제인 P-NP 문제가 있다. 본 글은 P와 NP의 정의, NP-완전과 NP-난해의 차이, 그리고 문제 사이의 환원이라는 핵심 도구를 세심하게 정리한다(출처: 위키백과 — NP-completeness). 제가 알고리즘 수업에서 외판원 문제에 며칠을 쏟다가 "이건 다.. 2026. 5. 24. 이전 1 2 3 4 ··· 15 다음