컴퓨터 사이언스 & 정보처리 핵심 엔지니어링
소프트웨어 엔지니어가 반드시 갖추어야 할 컴퓨터 구조, 프로세스와 스레드, 가상 메모리, TCP/IP 프로토콜, HTTP/3 및 핵심 자료구조를 12주간 체계적으로 정복합니다.
컴퓨터 시스템 아키텍처 & 폰 노이만 구조
CPU(ALU, 제어장치, 레지스터), 버스 시스템, 명령어 실행 사이클(Fetch-Decode-Execute)
메모리 계층 구조 & 캐시 메모리(Cache Hierarchy)
SRAM, DRAM, 캐시 적중률(Hit Ratio), 시간/공간 지역성(Locality), 캐시 일관성 프로토콜
프로세스와 스레드: 운영체제의 작업 실행 단위
PCB, 프로세스 상태 전이, 문맥 교환(Context Switching), 멀티프로세스 vs 멀티스레드
CPU 스케줄링 알고리즘 & 선점형/비선점형 분석
FCFS, SJF, Round Robin, Multi-level Feedback Queue, 기아 현상(Starvation)과 에이징
동기화와 임계 구역(Critical Section) & 교착 상태(Deadlock)
상호 배제(Mutex), 세마포어(Semaphore), 경쟁 상태(Race Condition), 은행원 알고리즘
가상 메모리(Virtual Memory) & 페이징/세그멘테이션
MMU와 페이지 테이블, TLB 고속 변환, 페이지 폴트(Page Fault), LRU 페이지 교체 알고리즘
네트워크 계층 모델: OSI 7계층 vs TCP/IP 4계층
캡슐화와 역캡슐화, PDU(Packet, Frame, Segment), 각 계층별 대표 프로토콜 및 장비
전송 계층(Transport): TCP 3-Way Handshake & 혼잡 제어
TCP vs UDP, 흐름 제어(Sliding Window), 혼잡 제어(Slow Start, Fast Recovery)
네트워크 계층(IP) & 서브넷팅, 라우팅 원리
IPv4 vs IPv6, CIDR 표기법, 공인 IP vs 사설 IP, NAT(Network Address Translation)
웹 프로토콜 진화: HTTP/1.1 ➔ HTTP/2 ➔ HTTP/3(QUIC)
Keep-Alive, 파이프라이닝, Multiplexing, 헤더 압축(HPACK), UDP 기반 QUIC 핸드셰이크
선형 자료구조: 배열, 연결 리스트, 스택, 큐, 해시 테이블
시간복잡도 Big-O 분석, 동적 배열의 원리, 해시 충돌 해결법(Chaining vs Open Addressing)
비선형 자료구조 & 그래프 탐색: 트리, 힙, BFS/DFS
이진 탐색 트리(BST), 우선순위 큐와 힙, 최단 경로 다익스트라(Dijkstra) 알고리즘 구현