일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- object
- QT TCP
- lua for windows
- 월세
- 등록임대주택
- 수도권주택공급
- 찾다죽는줄
- lua interpreter
- FILE TRANSFER
- lua install
- #부동산전자거래 #부동산전자계약 #부동산계약 #부동산전자계약방법 #부동산전자계약하는법 #부동산계약방법 #부동산중개수수료 #부동산중개수수료아끼기 #부동산복비아끼기
- QTcpServer
- meta table
- C++ API
- 국토교통부
- 프리미어 영상저장
- 청량리역한양수자인192
- 엑스퍼트생일축하해
- lua setup
- 엑스퍼트2주년
- TCP/IP
- file write
- file open
- #신혼부부 #결혼준비 #신혼부부희망타운신혼부부특별공급
- 티몬삼겹살데이
- C API
- 중소규모택지
- Lua
- file read
- 프리미어 영상변환
- Today
- Total
목록1. 프로그래밍 (94)
Value Creator의 IT(프로그래밍 / 전자제품)
http://lily.mmu.ac.kr/lecture/ 강의 관련 lily.mmu.ac.kr '지난 강의' 페이지로 가면 많은 자료가 있음
쓰레드란? 1. 경량화된 프로세스(컨텍스트 스위칭이 빠르다.) 2. 쓰레드끼리 메모리 공유가 가능하다. 3. 프로세스 내에서 프로그램 흐름을 추가한다? 프로세스는 각자의 독립된 메모리 영역을 가진다. 쓰레드는 프로세스에 속한 것으로서 쓰레드 끼리는 공유하는 메모리 영역이 있다. 운영체제 > 프로세스 > 쓰레드 thread1.c #include #include void* thread_main(void *arg); //쓰레드에서 사용할 함수 int main(int argc, char *argv[]) { pthread_t t_id; int thread_param=5; // if(pthread_create(&t_id, NULL, thread_main, (void*)&thread_param)!=0) //쓰레드 생..
select 함수 기반 멀티플렉싱의 단점을 극복한다. select 함수는 호출할 때마다 관련 인자의 정보를 전달해줘야 한다. 리눅스의 epoll 함수는 운영체제에서 멀티플렉싱을 지원한다.(참고 : 윈도우의 IOCP) 단, select함수는 호환성이 상대적으로 좋다(select 기반 코드는 윈도우와 리눅스간 상호 변경 쉬움) select 방식 사용 조건 1. 서버 접속자 수 적다. 2. 다양한 운영체제에서 사용가능해야 한다. epoll 기반의 에코 서버 echo_epollserv.c #include #include #include #include #include #include #include #define BUF_SIZE 100 #define EPOLL_SIZE 50 //epoll 사이즈 선언 void ..
앞서 설명한 입출력 스트림 분리는 2가지이다. 2019/10/30 - [1. 프로그래밍/4) Network] - Chapter 10 멀티 프로세스 기반의 서버 구현 Chapter 10 멀티 프로세스 기반의 서버 구현 1. 프로세스란? 실행중인 프로그램을 의미한다. 멀티프로세스 운영체제는 다수의 프로세스를 동시에 실행 가능하다. 프로세스마다 프로세스 ID가 할당된다. 2. Fork 함수 : 프로세스를 복사하는 함수. 복사되어서.. valueelectronic.tistory.com --> 멀티 프로세스 기반 입출력 분리 2019/11/07 - [1. 프로그래밍/4) Network] - Chapter 15 소켓과 표준 입출력 불러오는 중입니다... --> FILE 구조체 포인터 기반 입출력 분리 입력과 출력을..
----------------------------------------------------------------------------------------------------------------------------------- 표준 입출력 함수는 버퍼링을 사용하기 때문에 전송속도가 빠르다. 같은 경로에 임의의 파일을 하나 만들어놓고, 복사속도를 비교해보면 알 수 있다. 용량이 클수록 속도 차이를 확연히 느낄 수 있다. 시스템 함수(open, close, read, write) syscpy.c #include #include #define BUF_SIZE 3 int main(int argc, char *argv[]) { int fd1, fd2, len; char buf[BUF_SIZE]; fd1=..
추후 작성
1. send, recv 함수와 그 옵션 MSG_OOB : 긴급데이터 전송(Out Of Band) MSG_PEEK : 입력 버퍼에 수신된 데이터의 존재 유무 확인 oob_send.c #include #include #include #include #include #include #define BUF_SIZE 30 void error_handling(char *message); int main(int argc, char *argv[]) { int sock; struct sockaddr_in recv_adr; if(argc!=3) { printf("Usage : %s \n", argv[0]); exit(1); } sock=socket(PF_INET, SOCK_STREAM, 0); //클라이언트 소켓 설정 m..
* 멀티 프로세스 기반 서버와 차이점 멀티 프로세스 : 여러개의 프로세스가 여러개의 소켓을 핸들링(각 소켓에 대응하는 프로세스를 각각 만들어준다) 멀티플렉싱 : 하나의 프로세스가 여러개의 소켓을 핸들링 1. Select 함수를 이용하면 멀티플렉싱 서버 구현이 가능하다. Select.c select 함수 사용 예제 #include #include #include #include #define BUF_SIZE 30 int main(int argc, char *argv[]) { fd_set reads, temps; //fd_set 타입의 변수 선언 int result, str_len; //결과값, 길이값 변수 char buf[BUF_SIZE]; //문자열 struct timeval timeout; // tim..