'컴퓨터 과학' 카테고리의 글 목록
ProgramminGucci
컴퓨터 과학/네트워크
💻 [네트워크] TCP vs UDP 차이점 + 3-Way Handshake

2025.04.26
🎯 개요인터넷 통신에서 데이터를 주고 받을 때,TCP와 UDP 두가지 방식 중 하나를 선택하게 됩니다.TCP는 안정성(신뢰성)이 중요할 때,UDP는 속도(실시간성)가 중요할 때 사용됩니다.이번글에서는 TCP와 UDP의 차이점과,TCP가 어떻게 연결을 맺는지(3-Way Handshake)를 알아보겠습니다.🧠 TCP와 UDP란 무엇인가요?구분TCPUDP연결 방식연결 지향 (연결 먼저 수립)비연결 지향 (연결 없이 전송)신뢰성데이터 손실 시 재전송신뢰성 보장하지 않음속도상대적으로 느림매우 빠름사용 예시웹 브라우징, 이메일, 파일 다운로드스트리밍, 게임, 실시간 통신(VoIP)🧩 비유로 쉽게 이해하기TCP: 택배를 보낼 때, 택배기사님이 직접 수령인을 만나고 확인 서명을 받은 뒤 물건을 전달하는 방식입니다..
컴퓨터 과학/네트워크
💻 [네트워크] TCP/IP 4계층 모델 개요 - 쉽게 이해하기

2025.04.26
🎯 개요네트워크 실무에서 OSI 7계층보다 더 많이 사용하는 모델이 바로 TCP/IP 4계층 모델이다.TCP/IP는 인터넷 프로토콜 스택(Internet Protocol Stack) 이라고도 불리며, 오늘날 인터넷 통신의 핵심 구조이다.이번 글에서는 TCP/IP 모델이 무엇인지, 계층별 역할은 무엇인지, OSI 7계층과 어떤 차이가 있는지를 쉽고 현실적인 예시와 함께 정리한다. 🧠 TCP/IP란? TCP/IP: Transmission Control Protocol / Internet Protocol1970년대 초 미국 국방성(DARPA) 주도로 개발된 통신 규약여러 컴퓨터들이 네트워크를 통해 안정적으로 통신할 수 있도록 만든 표준현대 인터넷 통신의 기본 뼈대를 이룬다 📚 TCP/IP 4계층 구조..
컴퓨터 과학/네트워크
💻 [네트워크] OSI 7계층 개요

2025.04.26
🎯 개요네트워크를 공부할 때 가장 기본이자 핵심이 되는 개념이 바로 OSI 7계층이다.OSI 7계층을 이해하면 데이터가 네트워크를 통해 전달되는 흐름을 체계적으로 볼 수 있고, 각 계층의 역할에 따라 문제 발생시 빠르게 원인을 분석할 수 있다.이번 글에서는 OSI 모델이 무엇인지, 왜 만들어 졌는지, 7계층 각각이 어떤 역할을 하는지를 쉽고 현실적인 예시를 통해 정리한다. 🧠 OSI 7계층 사전지식 ✅ OSI란? OSI: Open Systems Interconnection의 약자1984년 ISO(국제표준화기구)가 제정한 네트워크 통신 모델목적: 전 세계 모든 컴퓨터 시스템이 서로 통신할 수 있도록 표준화한 구조를 만든 것✅ 왜 OSI 7계층이 필요할까?다양한 제조사(IBM, HP, Apple 등)들..
컴퓨터 과학/운영체제
💻 [운영체제] 프로세스, 스레드, 멀티태스킹, 동기화까지 운영체제 핵심 개념 정리

2025.04.26
🎯 개요운영체제(OS) 기본기를 다지는 것을 목표로, 프로세스와 스레드의 개념부터 동기화(세마포어/뮤텍스)까지 핵심 주제를 매일 하나씩 정리하고 실습하는 시간을 가졌습니다."한 번 보고 넘어가는 공부"가 아니라, 코드로 구현하고, 머리로 이해하고, 블로그로 정리하는 습관을 만드는 것이 목표였습니다. 📚 Day별 학습 요약 📌 프로세스 vs 스레드 차이점프로세스: 독립된 메모리 공간을 가진 실행 단위스레드: 프로세스 내에서 실행되는 작업 단위 (메모리 공유)실생활 비유: 프로세스는 집, 스레드는 집 안의 가족 📌 멀티태스킹 & 컨텍스트 스위칭멀티태스킹: CPU가 여러 작업을 빠르게 전환하며 처리하는 방식컨텍스트 스위칭: CPU가 작업을 전환할 때 필요한 상태 저장/복구 과정컨텍스트 스위칭 오버헤드 ..
컴퓨터 과학/운영체제
💻 [운영체제] 스레드 동기화 - 세마포어와 뮤텍스 완벽 이해

2025.04.26
💡 동기화(Synchronization) 기본 개념동기화란 여러 스레드(또는 프로세스)가 동시에 공유 자원에 접근할 때 데이터 충돌이나 레이스 컨디션을 막기 위해 자원 접근을 통제하는 것을 의미한다.왜 필요한가?→ 여러 스레드가 같은 변수나 메모리 공간을 수정할 때 충돌이 발생하면, 프로그램이 예측 불가능 하게 동작할 수 있다.→ 그래서 "한 번에 하나만" 자원을 접근하도록 제어하는 기술이 필요하다. 🔄 동기화 주요 기법: 뮤텍스 vs 세마포어1. 뮤텍스(Mutex)Mutual Exclusion (상호 배제)에서 온 말한 번에 하나의 스레드만 자원에 접근할 수 있게 함Lock을 걸고, 작업이 끝나면 Unlock한다락을 걸었던 스레드만 해제할 수 있다 (권한 있음)자바에서는synchronized 키워드..