프로그래밍 QnA

syia의 이미지

schedule()함수와 스택

schedule() 도 하나의 함수죠.

그렇다면 이 스케쥴 함수를 실행할때도 스택에 RET와 OFP등이 들어가고 할것인데..

이 부분은 커널의 스택에 들어가는건가요? 아니면 프로세스가 가지는 1G의 커널 스페이스에 들어가는건가요?...

그리고 또하나의 의문점은

schedule()함수는 커널코드 곳 곳 에서 실행되는데
그렇다면 이 schedule함수의 여러차례 호출이 중복되어

마치 재귀함수 호출처럼 스택에 쌓이지 않을까요?

예를들어 write시스템 콜을 호출했다면 해당 파일시스템 루틴에서

korisaram의 이미지

c++메쏘드 정의와 선언

c++에서 메쏘드 선언할때 class 안에서도 가능하고 밖에서도 가능한데요.

class in_method{
    void hello(){
        cout<<"hello";}
};

class out_method{
    void hello();
};
         
void out_method::hello(){
       cout<<"hello";
}

예전에 본 책에서 시간이 많이 걸리거나 내용이 길다면 밖에 선언하는게 좋다고 본 기억이 납니다.
근데 class의 안과 밖에서 선언하는게 효율이랑 속도에 영향을 많이 미치나요?

bizzare의 이미지

[질문] 64bit windows에서 사용할 수 있는 메모리의 양은?

32bit윈도우는 총 4G의 메모리를 사용할 수 있지요.

그리고 보통 OS가 2G, 프로그램이 2G까지 사용할 수 있다고 알고 있습니다.

그런데

만일 64bit윈도우에서 32bit프로그램을 사용할 경우,
총 몇G까지 메모리를 사용할 수 있나요?

1) 32bit 윈도우와 마찬가지로 2G까지.

2) OS가 사용하던 2G의 제약이 없어지므로 4G까지.

어느쪽일까요>

답변 부탁드려요.

bizzare의 이미지

[질문] 64bit 프로그램에서 32bit activeX를 쓸 수 있나요?

윈도우64용(x64)으로 64bit 프로그램을 만들고 있습니다.
이 때, 이 프로그램에서 32bit로 빌드된 activeX(OCX)를 사용할 수 있나요?

좀 더 넓게는 32bit로 빌드된 dll파일을 64비트 프로그램에서 사용할 수 있는지요?

답변 부탁드립니다.

powerc20의 이미지

malloc, free 버그 좀 찾아주세요.

아래 코드를 실행하면 i386 Redhat ES에서 실행하면,

Segmentation fault (core dumped)

에러가 납니다.

free의 순서에 따라

*** glibc detected *** double free or corruption (!prev): 0x09496110 ***

위 에러가 발생하기도 합니다.

제 생각에는 문제가 없는 코드이 것 같은데 에러가 발생해서 여러가지 문서를 찾아 봤으나 해결책을 모르겠습니다.

고수님들의 지도 바랍니다.

ps) 아래 코드는 두개의 파일을 open해서 제가 원하는 형태로 조합한 하나의 파일을 만드는 코드입니다.

hurryon의 이미지

리눅스에서 PCB 관리.

FreeBSD 의 코드를 리눅스용으로 변경하고 있습니다. PCB 에서 관리 되는 내용을 좀 뽑아 오고 싶은데 여의치 않아서 고수님들의 도움이 필요 해서 이렇게 글을 남깁니다.

inp = sotoinpcb(so);

단순의 위의 한 코드입니다. 물론 FreeBSD 의 코드 입니다. 리눅스에서는 sotoinpcb() 라는 함수가 존재하지 않습니다. ㅠㅠ

피곤해의 이미지

쉘스크립트 질문입니다. 백그라운드 실행시 커서가 안 떨어집니다.

현재 쉘 스크립트 java 소켓 프로그램 돌리는 것을 만들고 있는데..
실행후 커서가 안 떨어집니다..

#!/bin/bash

cd /home/test/html/
java $1 &>/dev/null
echo "Run"

이처럼 되어 있습니다.
# sh test.sh Check

하고 난뒤 커서가 떨어지지 않습니다.
Check 라는 소켓 프로그램은 돌아는 가는데..
커서가 떨어지지 않아서 ctl+c로 종료하면 해당 프로그램도 같이 종료 되고요..

이 쉘을 크론에다 등록하고 주기적으로 돌리려고 하는데..
커서가 떨어지지 않아서 걱정이 되네요..

ksil의 이미지

USB에서의 DMA설정...

아직 내공이 많이 부족한지 구글님께서 주신 답을 찾지 못해 이곳에 두드려 봅니다.

USB 로 external DVD장치를 연결했습니다.

근데 가끔 가다 Write fail이 나서 찾아 보니 DMA를 켜라 라는 정보를 찾고서

linux에서 DMA 를 켜려고 찾아 보니 USB 에 관한 내용은 못찾겠더군요.

hdparm으로는 지원하지 않는 장치 입니다 라고 하고

관련 정보도 볼수 없더군요.

혹시 linux에서 USB 의 DMA 설정을 알수 있거나 설정하는 방법이 있을런지요 ?

# 아~ 무한 삽질은

ohdol의 이미지

valgrind 사용시 질문...

valgrind를 아래 옵션을 줘서 돌렸는데...
꼭 프로그램이 종료되어야 메모리 릭 결과를 알 수 있나요?

valgrind --leak-resolution=high --trace-malloc=no --leak-check=yes --show-reachable=yes -v

현재는 쓰레드 풀로 작성된 서버프로그램을 돌리고 있는데

마찬가지로 쓰레드 풀로 작성된 테스트 클라이언트 프로그램으로 200회 정도 작업 하고 top으로 모니터링 해보면 VIRT 부분이 2m정도 증가하고 있습니다.

접속 중간에는 valgrind 에서 별로 뿌려주는건 없는데 메모리가 새고 있는건지...

player02의 이미지

[BASH-질문] xargs의 인자를 쉘 변수로 나타낼 수 있나요?

xargs의 man 페이지를 보면 마지막에 코드의 1)과 같은 예제가 나옵니다.

위의 예제를 응용해서 코드의 2)와 같이 사용하고 싶습니다.

xargs 리다이렉트 변수를 ${}로 표현할수 있으면 많은 부분에 응용이 가능할 것 같아서

나름대로 찾아봤는데 방법이 안보이네요. 원래안되는 건가요?

고수님들의 답변을 바랍니다. 그럼 수고하세요.


[code:1]
1) find /tmp -name core -type f -print | xargs /bin/rm -f

2) find /tmp -name core -type f -print | xargs /bin/mv $1 $1.bak

페이지

프로그래밍 QnA 구독하기