목록Linux/TCP IP Socket Programming (19)
min's devlog

목차 소켓 옵션 변경 소켓 옵션 종류 멀티캐스트 프로그래밍 send()와 recv() 옵션 지정 소켓(Socket) 통신 접속을 하기위한 통로, 네트워크 응용 프로그램의 동작이 오고 가는 길 TCP/IP소켓 : TCP/IP 통신에서의 소켓을 말한다. 흔히 IP통신에서 이뤄지는 동작이고 네이버와 같은 사이트를 접속할때 사용자PC --- 네이버서버 간의 소켓이 연결되고, 사용자가 네이버의 서비스 요청시 이 통로를 통해 주고 받게 된다. 소켓의 옵션을 변경하거나 세팅할 수도 있다. 소켓 옵션 변경 int setsockpot(int s, int level, int opt, const char *optval, int optlen); int getsockpot(int s, int level, int opt, con..
프로그램 실행 프로그램이 실행되면 프로세스가 된다. 컴퓨터나 폰을 켰을 때 0번 프로세스로부터 자식프로세스를 계속 생성하게 되고 명령을 내릴 때 마다 ID로 관리 부모의 환경변수, 로컬변수 값을 그대로 상속 받게 됨. 그 과정에 관한 함수 fork()에 관한 내용 bash()는 parent process->child를 생성하는 함수 이름: fork() fork()를 호출하면 return값으로 pid type(=정수값->child process id)를 리턴한다 ->fork() 호출시 부모에서 자식이 생성됨 fork() 부모 프로세스를 똑같이 복제하여 새로운 자식 프로세스를 생성하는 함수 자식 프로세스에게는 0을 리턴하고 부모프로세스에게는 자식 프로세스 ID를 리턴한다. 더보기 #include pid_t ..

어셈블된 코드 sample.c :c코드 sample.a : 어셈블드코드 각 cpu에 맞는 어셈블드코드가 어떻게 생성되었는지 확인하려면? (같은코드여도 다 다르다) : gcc -S -o sample.a sample.c sample.a의 생성 확인 : ls 자세히보기? : more sample.a static은 local변수이기도 하지만(.local) int 처럼 계속 가지고 있을것이다(.comm) 프로그램 실행의 원리 1. 프롬프트를 내고 명령어를 입력 받는다. 2. 자식 프로세스를 생성한다. (fork()) 3. 자식 프로세스에게 명령어를 실행시킨다. 자식프로세스의 역할이 명령어 실행시키기! -> fork() 후 exec() 시스템 호출 사용 -exec() 호출이 성공하면 리턴할 곳이 없어진다. -성공한..

os에서 가장 중요한것 : 자원! - 프로세스, 파일, cpu 그중 프로세스 test.c 를 gcc -i test test.c 로 컴파일하면 test라는 실행파일이 생김 /test 시 실행하게 됨, main memory로 로드됨 src code->compile->object code->cpu mainmemory->결과를 모니터에 프로세스 -실행중인 프로그램 -프로그램이 메모리에 있거나, cpu에 있거나 -사용자모드: 사용자 권한으로 명령실행 -커널모드: 컴퓨터의 자원을 실행하기 위한 프로그램 하드디스크를 읽기 위한 read()함수 등 ★ -준비ready 상태에서 cpu를 할당받으면 실행running 상태에서 오래걸리는 IO를 만나면 {printf같은 기계적함수(화면에출력,읽기)} 블록waiting 상태에..