프로그래밍 QnA

ins878의 이미지

PIPE 와 일명 명명파이프(FIFO)와 어떤 차이가 있나요???

:cry:
저는 러닝 리눅스 프로그래밍이라는 책을 보면서 공부를 하고 있습니다.
공부를 하다가 막히는 부분이 프로세스 간 통신이라는 단원인데요...
일반 PIPE는 어떤 기능을 하고 어떻게 사용해야 하는지는 알겠는데요...
책을 읽다 보니깐 FIFO(일명 명명파이프)라는 것이 나오더군요..
PIPE와 FIFO(명명 파이프)와 어떤 차이가 있는지~~ FIFO에 대해서 고수님들의 많은 설명을 부탁드립니다.

envy100의 이미지

vfprintf사용법좀 알려주세용

int
plog(va_alist)
va_dcl
{
va_list args;
char *fmt;
char cur_date[11];
char cur_time[13];
time_t ttime;
struct tm *stm;

ttime = time((time_t *)NULL);
stm = localtime((time_t *)&ttime);
strftime(cur_date, sizeof(cur_date), "%Y-%m-%d",stm);
strftime(cur_time, sizeof(cur_time), "[%H:%M:%S] ",stm);

va_start(args);
fmt = va_arg(args, char *);

sprintf(LogPath_, "%s.%s", LogFileName_, cur_date);
if((lfp_ = fopen(LogPath_, "a+")) == (FILE *)NULL)
{
va_end(args);
fclose(lfp_);
return -1;
}

fprintf(lfp_, cur_time);
vfprintf(lfp_, fmt, args);

gbtogether의 이미지

소켓프로그램에서 이미지테이타가 연속으로 갈때~~~

안녕하세여~~
지금 소켓으로 프로그램을 짜고 있는 학생인데여 ,,,

소켓을 이용해 이미지테이타(1장당 300-400k정도의 용량) 을 연속해서 (100장이 될수도있음) 보내는 프로그램을 짜는데여 (먼저 데이타의 정보(파일이름,크기등~~) 를 먼저 보내고 실제 데이타를 보내는데 한 4장정도낸 아무 이상없이 보내지는데 5장이상되면 파이프가 깨어짐이라고 에러 메세지가 나타나고 접속을 종료 해버립니다...
아무리 소스를 봐도 잘모리겠어여~~~
너무많은 데이타가 연속적으로 계속날아가서 그런건지???

ㅡ,.ㅡ;;의 이미지

혹시 원자적 실행을 보장하려면...?[어떠한방법을 쓰시나요?]

함수내의 짧은 구간내에 원자적실행을 보장하고 싶습니다..
예를 들면..
a();
b();

이수함수 사이에 어떤한 간섭도 받고 싶지 않은거죠.
전에 어디선가 원자적실행을 보장해주는 어떤것을 본듯(?) 한대 기억이 안나서..

아시는분 가르쳐주시면 감사하겠습니다...

prog4444의 이미지

윈2000에서 Turbo C++3.0 실행시 CPU 100%가 납니다.

보통 gcc를 많이 쓰는데 터보C 를 사용해야될일이 가끔있습니다.

그런데 터보C 를 실행시키면 CPU 가 무조건 100%가 됩니다. :(

터보C에서 빠져나와도 마찬가지이고 cmd를 종료시켜야 정상적으로

돌아오는데 저와같은 문제 겪으신분이 없는지..

winbbs나 google 에서는 찾을수가없네요..

좋은하루들 되세요. :D

alphamcu의 이미지

리눅스에서도 이런 개념이 있나요?

ms의 vc++ 컴파일러를 보면...
Debug, Release컴파일 방법과
Shared Library, Static Library이런식으로 라이브러리 포함문제등을
선택할수 있는데요.

gcc 에서도 이런게 가능한가요?
안된다면 그럼 컴파일된 실행파일들은 위의 어떤 특성들을 갖고 있는걸까요?

부활의 이미지

c로 만드는 cgi에서 파일다루기

호스팅 받는 곳에서 cgi를 사용하려는데 파일다루기가 되지 않네요.
간단하게 서버의 파일을 복사하는 예제가지고 시험을 해 보았는데 터미널에서
할 때는 잘 되던 것이 웹에서 파일 불러서 실행하니 계속 500에러가 뜹니다.
회사에 말해보니 cgi에 제한 걸어 놓은 것은 없다고 하는데, 왜 실행되지 않을
까요?
소스코드는 이렇습니다. 매운 간단한거.

[code:1]
#include<stdio.h>
#include<stdlib.h>

int main()
{
int c;
FILE *in, *out;

printf("Content-type: text/html\n\n");

ljh0431의 이미지

KDE와 Gnome에서 모두 돌아가는 프로그램 ?

KDevelop에서 QT라이브러리와 KDE 2.x라이브러리가 있던데
Kdevelop가 저는 KDE에서만 실행되는 줄 알았는데
Gnome에서도 KDE프로그램들이 실행이 되네요.
GNOME과 KDE는 다른 라이브러리로 제작됬다라고 알고 있는데
어떻게 이렇게 호환이 되나요 ?
KDE와 GNome 모두에게 호환되는 라이브러리가 있나요 ?
QT라이브러리가 이건가요 ?
컴파일 할 때 옵션에 라이브러리를 보면 KDE와 QT가 둘 다 체크되어 있습
니다.
KDE와 Gnome모두에서 돌아가는 프로그램은 Gnome과 KDE를 만드는

불량청년의 이미지

system()함수 사용에 관하여...

개인적으로 쉘에서 어떠한 작업을 많이 하게 하는 프로그램을 C로 만들
었습니다. 그런데 파이프나 exec함수군을 사용하지 않고 system()함수를
사용했습니다. 어디선가 보안에 문제가 된다고 하는데...
컴파일한 바이너리 코드를 보니 코드섹션에 쉘에서 수행되는 명령어가
그대로 있는거 같은데... system()함수가 보안에 문제가 어느정도
있는지 궁금합니다. 일반적으로 사용자 패스워드같은건 거의 프로그램
수행시 동적으로 입력받아서 처리하게 했

페이지

프로그래밍 QnA 구독하기