프로그래밍 QnA

dmr0923의 이미지

[쉘 스크립트] if 문에서 실행되는 커맨드를 백그라운드로 돌리기

안녕하세요.
리눅스 쉘 스크립트를 작성 중에 궁금한 점이 있어 글을 올리게 되었습니다.
if [ of command] 형식을 사용할 경우 커맨드를 백그라운드로 돌리고자 하는데 문법이 약한지 계속 포그라운드로 동작하네요..
예를 들면,

varRec="/opt/ipnc/rec"   # 커맨드
 
if ! $varRec 인자1 인자2 &; then
  echo "Error.."
  exit 1
fi

if 문에 넣지 않고 한줄짜리로 하면 포그라운드로 잘 동작합니다($varRec 인자1 인자2 &)
구동환경은 임베디드 리눅스(우분투) 입니다.
호스트 PC 에서 코딩을 작성한 후 타깃보드에서는 이를 nfs 로 끌어와 sh script 형식으로 실행시켰습니다.

[/]
asd2862의 이미지

kernel swi 질문

현재 kernel swi를분석하고 있는데 궁금한점이 있어 질문 드립니다.

ENTRY(vector_swi)
sub sp, sp, #S_FRAME_SIZE
stmia sp, {r0 - r12} @ Calling r0 - r12
ARM( add r8, sp, #S_PC )
ARM( stmdb r8, {sp, lr}^ ) @ Calling sp, lr

mrs r8, spsr @ called from non-FIQ mode, so ok.
str lr, [sp, #S_PC] @ Save calling PC
str r8, [sp, #S_PSR] @ Save CPSR
str r0, [sp, #S_OLD_R0] @ Save OLD_R0

-----------------------------------------//여기까지

saz3000의 이미지

Linux ) 서버 구축에서 로컬네임서버, 캐싱전용네임서버, 마스터네임서버의 차이가 궁금합니다!

로컬네임서버는 /etc/resolv.conf에 nameserver에 등록된 IP주소의 서버 인걸 알겠는데,

3가지가 전부 URL을 IP주소로 바꿔 주는 역할 아닙니까?

근데 3가지의 차이점이 궁금합니다.

비슷비슷한것같은데 궁극적인 차이가 무엇인가요?

winner의 이미지

TCP connection 이 승계될 수 있나요?

Linux 에서 tomcat application 을 통해 process 를 2개 이상 실행시켰습니다.
그리고 tomcat 을 중지하자 tomcat 이 사용 중이었던 8882 port ESTABLISHED 가
실행시켜두었던 한 process 로 넘어갔습니다. 그리고 이 process 를 중짘시키자 8882 port 는
tomcat 이 실행했던 다른 process 에게 넘어갔습니다.
이 문제가 특히 중요한 것은 중지되었던 tomcat 을 재실행 시키지 못한다는 것입니다.
결국 tomcat 이 실행시켰던 모든 process 를 중지하자 8882 port 는 닫혔고, 비로소
tomcat 을 실행시킬 수 있었습니다.
이런 현상이 왜 벌어질까요? Tomcat 이 실행시키지 않고, 각자 process 를 bash 에서 실행시키면
이런 문제는 발생하지 않습니다
Tomcat application 개발자는 8882 port 는 tomcat 이 내부적으로 사용하는 port 라서
Web application 에 접속하기 위한 port 도 아니라고 하네요.

trymp의 이미지

리눅스에서 winMerge 같은 소스 머지 툴이 있나요?


이전 버젼소스에 merge 할 일이 생겼는데요.

바로 patch 하기를 어렵고 보면서 merge 를 해야합니다.

그래서 winMerge 또는 beyond compare 처럼 양쪽을 보면서

merge 할 수 있는 툴이 필요한데요.

vimdiff 라는게 있는데 비교만 하지 수정을 할수는 없더군요.

혹시 알고 계시는 분 있다면 도움주시면 감사하겠습니다.

saz3000의 이미지

Client 에서 server로 vncviewer로 접근을 하면 vncviewer: unable to open display 라고 뜨는데 ...

Server에 vnc서버를 설치하고 /etc/sysconfig/vncservers 에 VNCSERVERS="1:root" 추가해주고
디렉토리 추가와 암호설정까지 하고 vnc서버 가동 시키고
Client에서 yum -y install tigervnc 를 이용해서 설치를 하고
vncviewer IP주소:display번호 를 적고 접속을 시도햇는데

vncviewer: unable to open display라고 뜨네요 ...

왜 이런것이죠?

cbb1225의 이미지

비주얼 스튜디오 2010 사용하는데 질문 있습니다(간단한 질문이에요)

프로그래밍 다시 손에 잡은지 하루 지나갑니다^^

지금 주석표시 해놓은 곳에 cnt 객체 생성하고 cnt.하면 멤버변수하고 멤버함수(?)종류가 저절로 선택하게끔 나오던데..

제가 저절로 나오지 않네요.. 무슨말이신지 잘 모르겠죠? 저도 뭔가 설명하기가 난해하네요..

혹시라도 이해하신 개발자분들 계시면은 설명좀 부탁드립니다..

궁금해서요^^;

embeddeds0의 이미지

gdb를 사용하여 디버깅하기 위한 준비중에 문제가 있어서 질문합니다~

제가 gdb를 사용해서 디버깅을 하려고 일부 문제가 있는 소스를 gcc -g 명령으로 컴파일을 해서
디버깅을 하기 위한 실행 파일을 만드려고 하는데요.
근데 어찌 보면 당연한거지만 몇몇 에러로 인해서 디버깅을 위한 실행 파일이 만들어지질 않아서 진행이 안되네요.

원래 이게 맞는건지 아니면 다른 방법이 있는지 알려주셨으면 해요 ㅠㅠ

cyk7890의 이미지

푸시서버를 자체개발하고싶은데 참고자료 공유좀 부탁드립니다.

기존 애플은 APNS, 구글은 GCM 이라고해서 클라우드 푸시서버를 제공하긴하는데..

이런 클라우드 서버말고.. 자체적으로 개발을 해보고싶은데

시작을 어떻게 해야할지 모르겠습니다 하하;;

혹시 관련 참고자료를 아시는분 계시면 공유좀 부탁 드립니다.

overcrash의 이미지

오브젝트 파일의 printf 를 막을수 있는 방법이 있나요?

안녕하세요.
리눅스 기반 소프트웨어를 개발하는 사람입니다.

최근 거래처로부터, 특정 chip 을 제어할 수 있는 API 를 .o 파일로 제공받았습니다.
그런데, 그 .o 파일을 포함해서 컴파일 후 실행 해 보면,
쓸데없는 printf 가 너무 많이 뜨네요.

소스코드를 요청했지만, 공개할 수 없다고 해서 난감한데요.
.o 파일 내의 printf 를 컴파일 시에 막을 수 있는 방법이 있을까요?

예를들면
gcc -o main_ex aaa.c bbb.c ccc.o

이런식으로 컴파일 하는데요, 마지막껀 거래처에서 받은 .o 파일입니다.
저 .o 파일에서 나오는 printf 만 막고 싶습니다.
다른 우리쪽 소스코드의 printf는 정상적으로 출력되야 하구요.

관련해서 방법이 있으면 공유 부탁드립니다.
감사합니다.

페이지

프로그래밍 QnA 구독하기