본문 바로가기

UNIX_LINUX_C_C++

(114)
XTerm을 이용한 오라클 10g 깔기 PHP+APACHE+ORACLE [출처] http://latefeel.tistory.com/1오라클 10g 설치하기 | [ORACLE 학습----] 2005.06.03 13:20 바람공주(miskorea24) 카페스탭 http://cafe.naver.com/q69/6378 님을 글을 기본으로 해서 내가 경험한 부분을 포함 간략하게 수정했다. 오라클을 설치하기 위한 준비 Oracle 10g를 설치하려면 몇몇 패키지가 반드시 설치되어 있어야 합니다. 확인 후 설치가 안된 패키지는 따로 설치해 줍니다. [root@ora10 src]# rpm -q binutils gcc make openmotif 일단 위와 같이 입력해서 해당 pkg(패케지)가 설치되있는지 확인하고 없으면 rpm으로 설치하든 소스 컴파일을 하든 설치해줘야한다. 이거 검사해도 ..
메시지큐 2번째 설명및 예제 IPC 설비-메시지 큐 UNIX는 프로세스 통신분야를 매우 풍부하게 지원하는 시스템이 되어, 서로 협력하는 태스크들로 구성된 시스템을 프로그램할 때 개발자들은 다양한 종류의 접근법을 사용할 수 있다. 고급 IPC 설비는 다음의 세 부류로 나뉜다. 1. 메시지 전달 2. 세마포 3 .공유 메모리 ipc 설비중 가장 중요한 것은 key 이다. ===key=== 1. 여러 프로세스 사이에 IPC 자원을 쉽게 공유해준다. 2. 식별될 수 있는 객체로 메시지 큐, 세마포의 집합, 공유 메모리 세그먼트 3. 키는 화일이름이 아니다. ==================라이브러리 함수================================= #include key_t ftok(const char *path, int i..
Unix C 시스템 시간출력 예제 #include #include char *current_time( void ) { static char time_str[ 64 ]; time_t *p_time = NULL ; struct tm *p_tm = NULL ; struct timeval tv ; gettimeofday(&tv, NULL); p_time = (time_t *)&(tv.tv_sec); p_tm = localtime(p_time); sprintf( time_str, "%04d%02d%02d %02d%02d%02d.%02ld", p_tm->tm_year+1900, p_tm->tm_mon+1, p_tm->tm_mday, p_tm->tm_hour, p_tm->tm_min, p_tm->tm_sec, tv.tv_usec/10000 ); re..
원초적 시간 구하기 ㅋㅋㅋㅋㅋㅋㅋ #include #include #include #include void swaptime(time_t, char *); int main() { int i; time_t the_time; char buffer[255]; // 현재 TIME 을 구한다. time(&the_time); printf("현재 시간은 %d 초\n", the_time); // 보기좋은 지역시간대로 바꾼다. swaptime(the_time, buffer); printf("%s\n", buffer); } void swaptime(time_t org_time, char *time_str) { struct tm *tm_ptr; tm_ptr = localtime(&org_time); sprintf(time_str, "%d/%d/%d %d:%d..
메시지큐 사용예제 #include #include #include #include struct _msgbuf { long msgtype; char mtext[256]; char myname[16]; int seq; };int main() { key_t key_id; int i; struct _msgbuf mybuf, rcvbuf; key_id = msgget((key_t)1234, IPC_CREAT|0666); if (key_id == -1) { perror("msgget error : "); exit(0); } printf("Key is %d\n", key_id); memset(mybuf.mtext, 0x00, 256); memset(mybuf.myname, 0x00, 16); memcpy(mybuf.mtext, "he..
Packet sniffer - libpcap사용 출처 : http://kldp.org/node/33279libpcap 쓰면 몇십줄이면 스니퍼 완성됩니다./* Packet sniffer * * (C) Copyright 2004 Lee J. H. * */ /* 사용법 : sniff */ /* * changelog * 2004/01/05 - pcap_loop()에서 pcap_dispatch()로 변경 * 시리얼 넘버관련 버그 수정 * perror()의 잘못된 구문을 수정 */ #include #include #include #include #include #include #include #define C_SNIFF #define CTRLC_ON 1 int main(int,char **); int create_file(char *); void exit_pro..
메시지 큐 - 프로세서간 통신 출처 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/system_programing/IPC/MessageQueue1 메시지 큐란 메시지큐는 메시지를 queue 데이타 구조 형태로 관리한다. 큐는 선입선출(먼저 들어간게 먼저 나오는) 데이타 구조를 말하며, 보통의 은행창구 혹은 일반적인 줄서기를 생각하면 된다. 이것은 흔히 FIFO(First in First Out)라고 불리운다(IPC 의 FIFO 설비와 혼동하지 말자). 이것과 반대되는 데이타 구조를 stack 이라고 하며, 큐와 반대로 가장 나중에 들어온게(가장 최근데이타) 먼저 나오는 형태를 가진다. 일반적인 배열을 접근방법에 따라 특수하게 분류한것이라고 생각하기 바란다. 메시지큐는 커널에서 전역..
비블럭킹 TCP 연결 예제 [출처] 비블럭킹 TCP 연결|작성자 장인정신mz_nonblockconnect비블럭킹 TCP 연결 #Non-blocking 연결은 생각보다 유용한 부분이 많은것 같습니다. 일반 connect 를 수행하면 상대방이 연결을 받아주지 않으면 무한정(대략 30초에서 2분) 대기상태로 빠지게 되는 단점이 있으나 Non-blocking 으로 connect 를 시도하면 제가 원하는 시간뒤에 빠져나올수 있어서 좋겠지요. 예제 # /* Code by JaeHyuk Cho */static int __MZ_Poll__(int s_Socket, int s_Event, int s_TimeOut){ /* s_TimeOut 0 ..