전체 글 238

pipe 함수 예제

pipe() - 하나의 파이프 및 파이프에 대한 두 개의 파일 디스크립터가 생성 - 하나의 파이프를 프로세스들이 공유 #include "sys/types.h" #include #include #include #include #define MAXLINE 4096 /* max line length */ /* err_sys("") --> return(1) */ int main(void) { int n, fd[2]; pid_t pid; char line[MAXLINE]; if (pipe(fd) < 0) { printf("pipe error \n"); return(-1); /* err_sys("pipe error"); */ } if ( (pid = fork()) < 0) { printf("fork error \n..

엔지니어 2012.07.06

네트워크 프로그래밍 - 시리얼 통신 - 자료 수신을 위한 poll

2006.12.31 13:01:27 (*.138.143.127) 14819 54 / 0 이번 시간에는 시리얼 통신에서 자료를 수신하는 부분을 구현하려 합니다. 그러나 송신 보다 수신하는 부분은 생각할 점이 있습니다. 전송이야 이쪽에서 필요할 때 보내기만 하면 되기 때문에 "언제라는" 시간적인 문제가 없습니다. 그러나 수신은 자료가 언제 올지를 모르죠. 기다려야 한다는 것인데, 자료가 올 때까지 마냥 시리얼 포트만 쳐다 보고 있을 수 없습니다. 다른 일도 처리 해야죠. 해야할 일이 산더미처럼 쌓였는데, 마냥 포트만 쳐다 볼 수 없습니다. 이럴 때 쉽게 생각할 수 있는 것이 일을 처리하는 중에 잠시잠시 포트를 확인하는 방법입니다. 가령 예를 들어서 아래와 같이 하는 것이죠. while( 1) { // 다른 ..

엔지니어 2012.05.30

NMS의 기본 개념 - 장애관리

http://blog.daum.net/pinkky/6818685 (원본) NMS는 Network Management System의 약자로, 네트워크 관리 시스템 또는 망 관리 시스템이다. 이 말의 의미는 NMS는 네트워크를 관리하는 시스템이며 그 관리 대상이 네트워크 또는 망이라는 의미이다. 즉, 관리 대상이 네트워크 또는 망이라는 사실을 알 수 있다. 말장난 같다는 생각이 들지는 모르겠지만 NMS에서 관리대상의 정의란 매우 중요하다. 그렇다면 네트워크란 무엇인가? 네트워크라는 것은 전산 자원간의 연결 – 전산자원까지 포함해서 - 이다. 즉 "내 PC랑 네 PC랑 연결해서 잘 사용하고 싶어"라는 개념에서 네트워크의 개념이 출발한다고 보면 되겠다. 그렇다면 여기서 네트워크 관리자의 임무는 무엇일까? 네트워..

엔지니어 2011.08.23

Unix Domain Socket UDP

Unix Domain Socket - UDP 윤 상배 dreamyun@yahoo.co.kr 1절. 소개 우리는 이미 이전에 Unix Domain Socket를 이용한 IPC 에서 Unix Domain Socket 에 대한 기본적인 내용을 다루었었다. 그때는 SOCK_STREAM 을 이용한 연결지향의 Socket 를 사용했었는데, internet 소켓과 마찬가지로 UDP 특성 Socket 를 사용할수도 있다. 이번 글 에서는 UDP 를 이용한 Unix Domain Socket 에 대해서 알아보도록 하겠다. 2절. Unix Domain Socket (UDP) 2.1절. 특징 internet socket 상에서 UDP 를 다룰때, 관심을 가지는 특성이 비연결지향성이며, 그런이유로 데이타를 유실할수도 있으며, ..

엔지니어 2011.08.19

C언어 - 스트림(Stream)이란?

(카아알) Karl's the story of a proper life. C언어 - 스트림(Stream)이란? 2009/04/21 11:02 in I'm Developer. 스트림이란 일련의 문자열이며, C언어에서 자료를 입출력하기 위하여 사용하는 것으로 프로그램과 입출력 장치 사이에서 입출력 자료들을 중계하는 역할을 담당합니다. 스트림(Stream)이란 글자 그대로 해석하자면 '흐름', '흐르다'라는 뜻으로, 데이터를 입력 받거나 출력하려면 먼저 스트림에 일련의 바이트 문자들을 기록한 다음 스트림으로부터 데이터를 읽거나 특정 장치에 데이터를 출력하는 것입니다. 스트림의 장점 프로그램의 입출력 동작이 입출력 장치와는 독립적이기 때문에, 스트림이 어디로 가는지 어디에서 오는지에 대해 신경 쓸 필요가 없습니..

엔지니어 2011.08.11

리눅스 시스템 프로그래밍 8장 IPC

Facebook Joinc 그룹 Joinc QA 사이트 http://www.adamsinfo.com/mknod-tutorial/ 1 IPC 1.1 IPC 소개 위의 그림은 2장에서 간단히 설명했던 리눅스 커널 구조그림이다. 이번장에는 이중 IPC 에 대해서 다룰 것이다. 그림에서 처럼 Process는 완전히 독립된 실행객체이다. 서로 독립되어있다는 것은 다른 프로세스의 영향을 받지 않는다는 장점이 있다. 그러나 독립되어 있으니 만큼 별도의 설비가 없이는 서로간에 통신이 어렵다는 문제가 있다. 이 문제는 이 전장의 쓰레드와 비교해보면 두드러진다. 이를 위해서 커널영역에서 IPC라는 내부 프로 세스간 통신 - Inter Process Communication -을 제공한다. 프로세스는 커널이 제공하는 IPC..

엔지니어 2011.08.11

call by value와 call by reference | KLDP

2007/10/19 - 4:45오후 토론, 토의 제가 시험관계로 조사&정리한 내용입니다. 어떤 서브루틴이의 인자에 대한 변경이 원래 변수의 값에 영향을 미칠 때 call by reference라고 한다. 포인터를 이용하면 주소 값을 전달해주기 때문에 call by reference를 흉내 낼 수는 있지만 call by reference는 아니다. 포인터를 사용한 call by reference를 흉내 낸 경우 호출된 함수의 스택에 넘겨받은 주소를 보관하기 위한 로컬 변수가 생성된다. 하지만, call by reference를 지원하는 언어의 경우 스택에 넘겨받은 주소를 보관하지 않는다. call by reference를 지원하는 언어로 C++의 참조형연산자(&)와 FORTRAN등이 있다. 참조형과 포인터..

엔지니어 2011.08.11

유선으로 연결된 인터넷을 무선으로 공유하기

출처: 오래전에 받은것이라.. 모르겠음... 블로그 주인께서 알려주시면 바로 삽입하겠습니다. 보통 노트북을 쓰시는 분들은 유선랜카드와 무선랜카드를 다 가지고 계실겁니다. 그런 노트북으로 유선으로 연결해서 쓰시는데 무선 신호는 닫지 않아서 wifi를 못사용하시는분들 유무선 공유기 있으신 분들은 그냥 wifi 쓰시면 대구요^^; 저처럼 아이폰을 질러서 유무선 공유기를 살돈이 없다!! 하시는 분들 괜찮은 팁 같으니 한번 해보세요^^ 우선 무선랜카드가 활성화 되어 있어야 합니다. 물론 유선으로 인터넷이 연결이 되어 있어야 하구요 기본 바탕을 위와 같이 하고 시작해 보도록 하겠습니다. 시작->실행->"services.msc" 입력후 Enter 를 하시게 되면 아래와 같은 창이 뜨게 됩니다. 서비스들 중에 밑으로 ..

엔지니어 2011.08.11