프로그래밍 QnA

zosowo의 이미지

프로세스 정보에서 TTY 는 어디서 가져온 정보인가요?

흠,, 제가 지금 ps 명령어를 구현하고 있거든요;;;

/proc/pid/fd 에서 readlink를 이용해서 알수 있다고 하는데,

fd 를 열려고 하니까 퍼미션 오류가 떠요.
root 로 /proc/pid/fd 들어가니까 안에 아무것도 없구요;

ttyname() 라는 함수를 사용하려고 했는데,
각 프로세스들의 터미널 정보를 불러오는게 아니고, 파일디스크립터를 이용해서 터미널 정보를 불러오는거라 ttyname은 아닌듯 싶구요.

흠.. 어떤식으로 각 프로세스들의 tty 값을 가져와야할까요?

kjh213의 이미지

[완료]페도라5에서 xinetd설치때문에 고생하고있습니다ㅠㅠ

저는 페도라5로 웹서버 구축하려고 공부하는 학생입니다.

처음에는 책만 보고 했는데요 xinetd에서부터 막혀서요ㅠㅠ

xinetd-2.3.9-1.i686.rpm설치했구요

yum install xinetd하기전에 xinetd-2.3.14.tar.gz받아서 압축 풀고 make install까지 했는데요....

정작 중요한 yum install xinetd가 되지 않아서 애를 먹고 있습니다ㅠㅠ

yum install xinetd를 하게되면요

Cannot find a valid baseurl for repo: core
Error: Cannot find a valid baseurl for repo: core

설치가 되려다 말고 저런 문구가 뜹니다...

이런 문제에 대한 해결책을 아무리 구글링해도 나오지 않아

글을 올리게 됐습니다ㅠㅠ

메일로 보내주셔도 감사하겠습니다^^ khw215@hanmail.net

speedwall의 이미지

프로그램을 더 빠르게 만들때 어떤걸 확인하시나요?

이제 처음 제 힘으로 프로그램을 만들어보는 초짜 입니다.

인가되지 않은 사용자가 웹페이지를 열면 사용을 차단 시키는 알람창을 띄우는 프로그램을 만들고 있습니다.

구현은 다 해둔 상탠대 지나가는 패킷을 잡고, 차단된 사용자인지 DB에서 비교하고, 패킷의 헤더가 SYN을 요청하면 ack,syn을 보내고

그다음 GET 를 요청하면 HTTP 태그를 보내주는 방식입니다.

만들어둔 패킷을 보내는 방식인대 웹서버와 클라이언트가 너무빠른속도로 3way- 를 맺고 데이터를 주고받아버리네요.

(웹서버가 같은 네트워크에 있음.) 거의 0.002~ 0.4 정도 늦어버리는데요. 차단 알람창이 뜰때도 있고 안뜰때도 있습니다

그래서 프로그램을 좀더 빠르게 만들려고 합니다.

소스를 올리면 좋겠으나 사정상 올리진 못합니다.

보통 프로그램을 경량화 시킬때 어떤걸 먼저 확인해보시나요?

아참. 그리고 패킷의 ip부분 32비트 값을 X.X.X.X 로 바꾸려고

njk0308의 이미지

채팅서버 질문입니다!!

채팅서버를 게임클라이언트에 붙이고 있습니다.
현재 서버랑 클라이언트 자체로는 자료가 오가고 있고요 +_+

근데 이걸 클라이언트에 옮기는 중에
지금은 그냥 클라이언트는 연결 요청 할 때 IP와 PORT번호를 직접 입력하지만
게임상에서는 제가 알아서 지정해 줘야 하잖아요 ㅠㅠㅠ

근데 지금 그 방법을 모르겠어서
IP는 define으로 지정해 줬는데
PORT는 같은방법으로 했더니 char형이 아니라 int형이라고 안된다고 하네요 ㅠㅠㅠ
고수님들 부탁드립니다 ㅠㅠㅠㅠㅠㅠ

#include "_StdAfx.h"
#include
#include
#include
#include

gusrmr의 이미지

os과제중 이상한점이 있습니다.

os과제로 리눅스상에 vxworks를 구현하고있습니다.

현재 범위는 태스크관리까지이고 구현은 다 했습니다만 가끔 비정상 작동을 합니다.

동일 우선순위 태스크를 7개 만들고 실행을 시키면(각 0 ~ 6을 출력하게 했습니다.)

정상적으로 0 ~ 6번의 태스크가 라운드로빈방식으로 작동을 하지만,

가끔 0, 1, 2, 3, 4, 5, 6, 5, 6, 5, 6을 출력하고 종료되는 문제가 있습니다.

gdb로 찍어보면 정상종료되었다고 뜹니다만;

main을 포함한 생성한 태스크모두 종료시키는 코드는 없습니다(무한루프로 대기).

몇일을 고민해봤지만, 원인파익이 안되서 질문드립니다.

웃긴건 스케줄링하는 부분에 printf로 찍어보면 수행시간이 길어져서 그런지 저런 현상은 발생하지 않습니다;

하지만, sleep등 수행시간을 더 늘리면 정상수행이 안되고 정상종료되는 문제가 있습니다.

조언 부탁드립니다....

josimhaela의 이미지

리눅스 로그인후에 제가 만든 프로그램을 가장 먼저 띄우는 방법이 있을까요 ?

일단 제가 생각한건 c 코드로 프로그램을 하나 만들어서

로그인을 하면 바로 그 프로그램이 실행 되는 건데

쉘 프로그래밍을 사용해야 하나요 ?

해야 한다면 어떻게 구체적으로 해야할지..

아직 쉘 개념은 모르는 상태입니다..

pmj0403의 이미지

TCP에서 패킷전송후에 ACK 안오면, ACK 안온 패킷의 다음 시퀀스 번호의 TCP 데이터를 전송하나요?

TCP에서 패킷전송후에 ACK 안오면, ACK 안온 패킷의 다음 시퀀스 번호의 TCP 데이터를 전송하나요?

예를 들어 송신자에서 TCP 10번 메시지를 수신자한테 보냈는데,

10번메시지에 대한 ACK를 못받은 상태이라면, 다음보기중 어떤게 맞는건가요?

1) 11번부터 쭉~~데이터를 보내나요???

2) 10번 ACK 받을때까지 무조건 기다린다

3) 11번부터 몇개보내보다가 그래도 ACK 안오면 그다음 기다린다

4) 답이 없다. 다른 정답이 있다.

답변 주시면 감사드리겠습니다. 머리 깨지겠네요;ㅋㅋ

ddanggi의 이미지

Linux에서 sparse 사용해보신 분들 있나요?

안녕하세요.
장비쪽에 리눅스를 올리는 일을 하고 있습니다.

이제까지 짠 드라이버등의 소스 코드를 좀 검증해볼까 해서 sparse를 사용해볼려고 하는데요..
이래저래 막히네요...ㅜㅜ;;

홈페이지에서 4.3 , 4.2 소스를 받아서 make하는 과정에서부터 에러가 나네요..ㅜㅜ;;
(뭔가 제 설정이 잘못 된 것 같기는 한데..)

그래서 혹시나 해서 4.0을 받아서 make , make install 하니깐 정상적으로 되고요..
그런데 linux에서 make C=2 로 해서 컴파일 하면.. linux/types.h 파일을 못 열겠다고 하고..--;;
make 명령어는 정상적으로 잘 됩니다.

혹시 경험이 있으시분들 가르침을 좀 선사해주시기 바랍니다..ㅜㅜ;

hwanikani의 이미지

[완료] c++에서 cout 버퍼 질문입니다

아래 질문 올린거에 관해 여러모로 궁금증이 생겨서
output buffer에 관한 섹션을 읽어 봤습니다.

보니깐 화면에 디스플레이 하는 경우는 버퍼가 꽉찰때까지 기다리지 않는다고 하더군요.

flush 하는 경우가
1. 버퍼에 new line characer를 보낼때 (endl)
2. input을 기다리고 있을때
3. flush함수를 사용해서

라고 나와 있는데요. 그럼 예를들어

#include

int main()
{
std::cout << 'a';
while(1){}

return 0;
}

위와 같은 프로그램은 아무것도 프린트 안해야 하는게 정상 아닌가요?
(버퍼에 a가 남아 있기만 할뿐 화면에 출력 아무것도 안해야 하지 않나요 -_-;)

실제로 프로그램 예제 따라하면서 화면에 출력할때 flush를 한번도 쓴적이 없었던것 같은데
위와 같은 경우에 자동으로 flush가 되는 이유는 뭔가요?

페이지

프로그래밍 QnA 구독하기