전공 과목 시험정리 (68) 썸네일형 리스트형 fork 로 프로세스 생성 후, 프로세스간 변수 공유 fork() 로 자식 프로세스를 생성한 후에, 자식프로세스에서 배열에 1을 더하고, 부모프로세스에서 그것을 출력한다. .. 인 프로그램에서, 이상하게도 자식 프로세스에서 연산한 값이 부모프로세스에게 전달되지 않았다. -->fork() 로 프로세스를 생성하면, 자식 프로세스와 부모 프로세스 두개의 프로세스를 제어하게 된다. 이때 각각 프로세스는 변수를 복사 한 것처럼 관리되어 지는데, 한 프로세스에서 (자식 프로세스에서 라고 가정할 때) 배열의 값을 수정하고 다른 프로세스에서 그것을 출력한다면 각자 다른 변수인데 값만 같을 뿐이므로, 다른 프로세스에서 출력한 값이 변했을 리가 없다. 따라서 변수를 수정하고 나서 그 값을 공유하고 싶다면 다른 방법을 사용해야 하는데, 첫 번째로 공유메모리를 사용하는 방법이 .. 웹에서 서버정보 파싱 전에 올렸었던http://blog.kim82536.pe.kr/entry/%EC%9B%B9-%EC%9D%91%EB%8B%B5%EC%97%90%EC%84%9C-%EC%84%9C%EB%B2%84-%EC%A0%95%EB%B3%B4-%EC%B6%94%EC%B6%9C 의 프로그램을 약간 수정해 보았다. 원래 소스project.c1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091.. 쓰레드 프로그램 서버 소스를 멀티 쓰레드로 돌리기 위해 가져온 예제이다. 이상하게 예제 그대로도 컴파일이 되지 않길래 찾아봤더니쓰레드를 이용한 프로그램의 컴파일은 gcc 에 lpthread 옵션을 줘야 한다고 되어 있었다..http://stackoverflow.com/questions/9331863/lpthread-option-of-gcc 1234567891011121314151617181920212223242526272829303132333435363738#include #include #include #include #include #include // gcc test.c -o test -lpthread void* My(void* Para){ int i; for(i=0;i 알고리즘 대결 서버 소스 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816.. 동기 소켓 vs 비동기 소켓 1. 동기소켓동기 소켓은 클라이언트가 "HELLO" 라고 요청하면 서버가 대답을 보내줄 때까지 기다려야 한다. --> 클라이언트의 send 후 recv 할 때까지 기다림. 그래서 프로그램 설계 때 클라이언트와 서버의 패킷 교환을 명확히 해야 할 필요가 있음. 2. 비동기소켓비동기는 클라이언트가 "HELLO" 라고 요청하고 나서 서버의 응답이 오기 전까지 다른 일을 수행 할 수 있다. --> 서버의 응답이 없어도 (프로그래머가 응답이 없으면 끝내는 루틴을 넣지 않는 한,) 프로그램이 종료되지 않는다. 그래서 이 동기, 비동기 소켓을 보고 나서, 맨 처음에 들었던 생각은 동기보다 비동기가 더 좋은 방식이 아닌가 생각했었는데, 검색을 좀 더 해보니 http://jangpd007.tistory.com/70 이런.. 자바 OT 보호되어 있는 글입니다. TCP/IP 제출본 TCP/IP --> TCP/IP를 중심으로 하는 인터넷에서 사용하는 프로토콜 군을 총 묶어서 말함. Internet -> tcp/ip를 중심으로 운영되는 네트워크. internet -> inter 네트워크를 사용하는 네트워크. (inter + net) TCP/IP 4. Application --> 7,6,5 3. Transport --> 4 2. internet --> 3 1. Network Access --> 2,1 TCP/IP 프로토콜 suite 1. Application - 응용프로그램 (통신프로그램을 말하는거야. 한글 2005 X) - 사용자가 실행하는 응용프로그램 프로토콜. 1.HTTP [80] - 웹페이지 전달 *URL (Uniform Resource Locator) --> 네트워크 상에 있는.. 프로세스 관련 용어 정리 백그라운드 및 포그라운드 프로세스 백그라운드 프로세스 백그라운드 프로세스로 실행하면 쉘은 백그라운드 프로세스의 종료 여부에 관계없이 즉시 명령 대기 상태가 됨. 다른 명령을 받아 들일 준비를 함. – 어떤 명령을 백그라운드로 실행시키고 싶으면 ‘&’ 를 명령뒤에 넣어줌 – 키보드 입력을 받을 수 없으므로 입력 없이 장시간 실행되어야 하는 경우 주로 사용 – 백그라운드로 실행되고 있는 프로세스는 ps 명령으로 상태를 점검포그라운드 프로세스 – 쉘 프롬프트에서 명령을 입력하고 실행하면 대부분 포그라운드로 프로세스가 됨. – 포그라운드 모드로 실행되는 프로세스는 키보드 입력을 받을 수 있고, 화면에 출력할 수 있음 – 쉘은 포그라운드로 실행 중인 프로세스가 종료되면 다시 쉘 프롬프트를 보여주면 명령 대기 상태.. 이전 1 2 3 4 5 6 7 8 9 다음