
컴퓨터 시스템은 크게 하드웨어와 소프트웨어로 나누어진다.하드웨어: 컴퓨터를 구성하는 기계적 장치들예) 중앙처리장치(CPU), RAM, HDD, SSD소프트웨어: 하드웨어의 동작을 지시하고 제어하는 명령어들의 집합예) 운영체제(OS), 컴파일러, 워드프로세서중앙처리장치(

CPU는 컴퓨터에서 가장 핵심적인 역할을 수행하는 부분으로, '인간의 두뇌'에 해당하며 크게 연산장치, 제어장치, 레지스터 3가지로 구성된다.연산장치 (산술논리연산장치)산술연산(덧셈, 뺄셈 등)과 논리연산(AND, OR 등)을 수행한다.연산에 필요한 데이터를 레지스터에
1. 캐시 메모리의 정의 및 역할 (1) 정의 및 목적 캐시 메모리는 속도가 빠른 장치(CPU)와 느린 장치(주기억장치) 사이의 속도 차이로 발생하는 병목 현상을 줄이기 위한 메모리이다. (2) 작동 원리 CPU가 주기억장치(RAM)에서 데이터를 읽어올 때, 자주 사용
컴퓨터에서 실수를 표현하는 방식은 고정 소수점(Fixed Point) 방식과 부동 소수점(Floating Point) 방식 두 가지가 존재한다.정의: 소수점이 찍힐 위치를 미리 정해놓고 실수를 표현하는 방식이며, 실수를 정수부와 소수부로 나누어 표현한다.구성 요소: 예
패리티 비트는 정보 전달 과정에서 오류가 발생했는지 검사하기 위해 데이터에 추가하는 비트를 말한다.전송하고자 하는 데이터의 각 문자에 1비트를 더하여 전송하는 방식이다.패리티 비트에는 짝수 패리티와 홀수 패리티 두 가지 종류가 있다.이는 전체 비트(데이터 비트 + 패리

메모리에 저장된 명령어들을 실행하는 유한 상태 오토마톤유한 상태 오토마톤은 이름은 어렵지만, 원리는 아주 명쾌하다. 쉽게 말해 "정해진 몇 가지 상태(State) 사이를 규칙에 따라 옮겨 다니는 추상적인 기계"를 뜻한다.핵심 개념 3가지상태 (State): 기계가 머무

1. OSI 모델이란? OSI(Open Systems Interconnection) 모델은 국제표준화기구(ISO)에서 1984년에 제정한 네트워크 통신의 표준 모델이다. ✨ 핵심 개념 서로 다른 시스템 간의 통신을 위한 표준 프레임워크 네트워크 통신을 7개의 논리적

3-way handshake: TCP 연결을 "서로 준비 완료 + 초기 시퀀스 번호(ISN) 동기화"까지 확정하는 절차4-way handshake: TCP 연결을 "양방향(Full-duplex) 스트림을 각각" 안전하게 닫는 절차신뢰성 보장: TCP는 데이터가 손실되거

1. TCP 통신의 기본 개념 ✨ TCP란? TCP(Transmission Control Protocol)는 신뢰성 있는 데이터 전송을 보장하는 연결 지향 프로토콜이다. 핵심 특징 Unreliable Network에서 Reliable Network를 구현 순서

1. UDP란? ✨ 기본 정의 UDP(User Datagram Protocol)는 '보내는 사람(User)'이 '데이터 덩어리(Datagram)'를 단순히 '던지는(Protocol)' 방식이다. > ⭐ 데이터그램(Datagram): 독립적인 관계를 지니는 패킷으로,
1. 대칭키 암호화 (Symmetric Key Encryption) ✨ 기본 개념 암호화와 복호화에 동일한 키를 사용하는 방식이다. 송신자와 수신자가 같은 비밀 키를 공유해야 하며, 이 키가 제3자에게 노출되지 않는 것이 보안의 핵심이다. ✨ 작동 원리 ✨ 대표적
1. HTTP (HyperText Transfer Protocol) ✨ 기본 개념 HTTP는 웹에서 클라이언트와 서버 간에 리소스(HTML, JSON, 이미지 등)를 주고받기 위한 가장 기초적인 애플리케이션 계층 프로토콜이다. 기본적으로 80번 포트를 사용하며, 클라

1. TLS/SSL이란? ✨ 기본 개념 TLS(Transport Layer Security)와 SSL(Secure Sockets Layer)은 웹 브라우저와 서버 간의 인터넷 통신을 암호화하여 정보를 안전하게 주고받을 수 있게 해주는 보안 프로토콜이다. 역사적 배경:

1. 로드 밸런싱이란? ✨ 정의 및 목적 정의 네트워크 트래픽이나 작업 부하를 여러 서버 또는 컴퓨팅 자원에 고르게 분산시키는 기술 클라이언트와 백엔드 서버 사이에 위치하는 로드 밸런서(Load Balancer)가 요청을 수신하여 적절한 서버로 라우팅해주며, 특

1. 왜 이 개념이 중요한가? 서버 개발, 시스템 프로그래밍, 프레임워크 선택 등 거의 모든 소프트웨어 설계에서 이 네 개념의 조합이 등장한다. Node.js는 싱글 스레드인데 빠른 이유, Java의 NIO 개념, Spring WebFlux와 MVC의 차이 모두 이 개

1. 왜 I/O 모델을 이해해야 하는가? 모든 네트워크 서버, 데이터베이스 클라이언트, 파일 시스템 작업의 성능은 I/O를 어떻게 처리하느냐에 달려 있다. 초당 수만 건의 요청을 처리하는 현대 서버(Nginx, Node.js, Netty 등)가 가능해진 핵심 배경이 바