| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- 코딩테스트
- Mini-React
- 알고리즘
- 개발자
- c언어
- HTML기초
- 해시
- Python
- 그래프
- BFS
- 프론트엔드
- 그리디
- react
- CSS
- javascript
- html
- 혼자 공부해서 개발까지
- 백준
- 크래프톤 정글
- 코딩
- 정렬
- 프론트앤드
- 정글
- frontend
- DFS
- Git
- 프로그래머스
- 알고리즘 기초
- 팀프로젝트
- js
- Today
- Total
목록2025/11/07 (2)
민혁이의 IT스토리
프로세스와 스레드의 관계프로세스(Process) 는 실행 중인 프로그램의 인스턴스로,각자 독립된 메모리 공간(Code, Data, Stack, Heap)을 갖는다.하지만 프로세스 간 전환은 느리고, 자원 공유가 어렵다. 스레드(Thread) 는 한 프로세스 내부에서 실행 흐름을 여러 개로 나눈 것이다.스레드들은 같은 메모리 공간(코드, 데이터, 힙) 을 공유하지만자신만의 스택(Stack) 과 레지스터(실행 상태) 를 가진다. 👉 즉, 스레드는 “프로세스의 실행 단위” 이며,하나의 프로그램이 동시에 여러 일을 처리할 수 있게 한다. 스레드의 필요성 1. 성능스레드는 메모리 공유 덕분에 프로세스보다 전환이 빠르다.새 스레드를 만드는 비용은 프로세스를 만드는 것보다 훨씬 작다.2. 병렬성 (Parallel..
Tiny 서버란 무엇인가Tiny는 200줄로 동작하는 실제 웹 서버입니다. 단순하지만,HTTP 프로토콜과 소켓 프로그래밍의 핵심 개념을 모두 담고 있습니다. Main 함수 - 서버의 시작점 💡 포인트“Tiny는 멀티스레드가 아니라 반복적(Iterative) 서버다.”“한 번에 한 클라이언트 요청만 처리한다.”1. 변수 선언부int listenfd, connfd;char hostname[MAXLINE], port[MAXLINE];socklen_t clientlen;struct sockaddr_storage clientaddr; listenfd: 서버가 클라이언트의 연결 요청을 "듣는(listen)" 소켓의 파일 디스크립터connfd: 실제로 연결이 성립된 후, 클라이언트와 데이터 송수신에 사용하는 “..