프로세스, 쓰레드프로세스(Process)쓰레드(Thread)운영체제(OS)로부터 자원을 할당받은 작업의 단위프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위 프로세스(Process)프로그램과 프로세스의 차이프로그램(실행 X)프로세스(실행 O)- 어떤 작업을 하기 위해 실행할 수 있는 파일- 파일이 저장 장치에는 있지만 메모리에 올라가지 않은 정적인(Static) 상태- 실행되어 작업중인 컴퓨터 프로그램- 메모리에 적재되어 CPU 자원을 할당받아 프로그램이 실행되고 있는 상태프로세스의 자원 구조- 코드 영역(Code / Text) : 프로그램 함수들의 코드가 CPU가 해석 가능한 기계에 형태로 저장- 데이터 영역(Data) : 전역 변수나 각종 데이터들이 저장(.data, .rodata, .bss)..
728x90
반응형
분류 전체보기
더보기1. HTTP GET 요청과 POST 요청의 가장 큰 차이점은 무엇이며, 이것이 요청 헤더나 데이터 전송에 어떤 영향을 미칩니까?- GET 요청은 데이터를 URL의 일부(query string)로 전송하지만 POST 요청은 데이터를 요청 본문(body)에 포함합니다. 1) GET 요청의 URL 길이에는 브라우저나 서버에 따라 제한이 있습니다. 이로 인해 전송할 수 있는 데이터의 양이 제한됩니다. 2) POST 요청은'Content-Length'와 'Content-Type' 같은 추가적인 헤더 정보를 필요로 합니다. 2. HTTP 응답 코드 404의 의미는 무엇입니까? 그리고 서버가 요청을 처리할 수 없을 때 반환하는 HTTP 상태 코드는 무엇입니까?- HTTP 응답코드 404는 "Not ..
Chapter 10 시스템 수준 입출력입출력(I/O)은 메인 메모리와 디스크 드라이브, 터미널, 네트워크 같은 외부 장치들 간에 데이터를 복사하는 작업이다.입력 연산은 데이터를 입출력 장치에서 메인 메모리로 데이터를 복사하고, 출력 연산은 데이터를 메모리에서 디바이스로 복사한다.리눅스는 Unix I/O 모델에 기초해서 응용 프로그램이 파일을 open, close, read, write할 수 있도록 하는 적은 수의 시스템 수준 함수를 제공한다. 그리고 I/O 재지정을 수행할 수 있게 해준다.리눅스의 읽기와 쓰기 연산은 응용 프로그램이 예상하고 정확히 처리해야 하는 짧은 카운트가 발생할 수 있다.Unix I/O 함수들을 직접 호출하는 대신, 응용 프로그램은 RIO 패키지를 사용해야 한다.RIO 패키지는 모든..
에코_클라이언트// TCP 에코 클라이언트 프로그램// 헤더파일 포함#include "csapp.h"// main 함수int main(int argc, char **argv){ // 파일디스크립터, 호스트정보, 포트번호, 버퍼 정의 int clientfd; char *host, *port, buf[MAXLINE]; // 버퍼 입출력을 위한 rio 변수 rio_t rio; // 명령행 인자 확인 if (argc != 3) { fprintf(stderr, "usage: %s \n", argv[0]); exit(0); } // 인자에서 호스트정보와 포트번호 저장 host = argv[1]; port = argv[2]; ..
HTTP(Hypertext Transfer Protocol) 웹에서 데이터를 주고받는 서버-클라이언트 모델의 프로토콜(웹 브라우저가 서버와 통신하는 규칙) 통신 방법사용자가 웹사이트를 방문하면 브라우저가 웹서버로 리소스를 요청요청을 받은 웹서버는 HTML, CSS와 같은 리소스를 응답으로 돌려줌클라이언트 요청과 서버의 응답 사이에 여러 프록시(Proxy) 서버를 거침프록시 서버를 통해 캐시를 보관하거나 보안을 위해 서버의 IP 주소를 숨기는 등 처리이 모든 통신을 안전하게 이뤄지게 하기 위해 TCP(Transmission Control Protocol) 연결을 사용 특징TCP/IP를 이용하는 응용 프로토콜HTTP는 연결 상태를 유지하지 않는 비연결성 프로토콜임(Connectionless)(이러한 단..
소켓(Socket)소켓은 프로토콜, IP 주소, 포트 넘버로 구성되고, 프로세스가 데이터를 보내거나 받기 위한 창구 역할을 하는 존재임전송 계층(Transport layer)와 프로세스 사이에서 인터페이스 역할을 하며 떨어져 있는 두 호스트를 연결하는 존재소켓은 장치 파일의 일종으로 이해할 수 있음 / 일반 파일에 대한 개념이 대부분 적용됨소켓 프로그래밍을 통해 네트워크 상의 다른 프로세스와 데이터를 주고 받을 수 있음더보기소켓의 3 요소 * 프로토콜프로토콜은 원래 외교상의 언어로써 의례나 국가간에 약속을 의미하며, 통신에서는 어떤 시스템이 다른 시스템과 통신을 원활하게 수용하도록 해주는 통신 규약, 약속 * IP전 세계 컴퓨터에 부여된 고유의 식별 주소 * 포트포트(Port)는 네트워크 상에서 통신하기..
네트워크컴퓨터나 기타 기기들이 리소스를 공유하거나 데이터를 주고 받기 위해 유선 혹은 무선으로 연결된 통신체계 기능애플리케이션 목적에 맞는 통신방법신뢰할 수 있는 데이터 전송 방법네트워크 간의 최적의 통신 경로목적지로 데이터 전송노드 사이의 데이터 전송네트워크 프로토콜네트워크 통신을 하기 위해서 통신에 참여하는 주체들이 따라야하는 형식, 절차, 규약 등[대표적인 10가지 네트워크 프로토콜] 인터넷 프로토콜 스위트(internet protocol suite)인터넷에서 컴퓨터들이 정보를 주고받는데 사용되는 프로토콜의 집합이를 TCP/IP 4계층 모델로 설명하거나 OSI 7계층 모델로 설명 OSI 7계층특징각 레이어에 맞게 프로토콜이 세분화되어 구현됨각 레이어의 프로토콜은 하위 레이어의 프로토콜이 제공하는 ..
728x90
반응형