프로그래밍 QnA

trymp의 이미지

멀티프로세스와 멀티쓰래드에서 CPU 배분 관련 내용입니다.


멀티프로세스에서는 kernel 에서 자동적으로 scheduling 해서 CPU core 를

배분하는 것 같은데요. ps -eo psr,pid,cmd 로 확인..

그런데 멀티쓰래드 같은 경우에는 쓰래들별로 CPU를 배분해서 사용하나요?

아니면 그 프로세스 자체에 해당하는 CPU 만 계속 사용할 수 있나요?

가령

멀티프로세스는 kernel 에서 자동적으로 core 가 아래와 같이 배분이 되는데,

daemon1 daemon2 daemon3
CPU1 CPU2 CPU3

멀티쓰래드일 경우에는

daemon
thread1 thread2 thread3
CPU1 CPU2 CPU3

위와 같이 배분이 되나요? 아니면 daemon 의 모든 thread 가 한 CPU core 에

의해서만 동작이 되나요?

알려주시면 감사하겠습니다.

고수님들의 많은 조언 부탁드립니다.

gura2013의 이미지

Mysql Connection pool - SQLrelay 에 관해 질문드립니다.


안녕하세요 좋은주말입니다 ^^/
먼저 구현하고자하는 서버는 일종의 게이트웨이 서버로서 다수의 단발적인 연결이
이루어지고 대부분의 메시지들은 DB와의 연결을 필요로 합니다.
C/C++, EPOLL 구조로 접속을 받아 ThreadPoll에서 처리하는 방식으로 구현하였습니다.

각 쓰레드들은 최초 생성시 DB Connection 을 하고, 이를 유지하며 계속해서 메시지를 처리하는데
이러한 방식으로 구현하고자 하니 쓰레드풀의 크기많큼 DB Connection이 생성되어 유지되어야
한다는것이 부담스럽습니다.

그래서 이를 줄이고자 Connection Pooling을 하기위해 SQLrelay를 사용하고자 하는데
그에 대한 몇가지 질문이 있습니다.

jinmanp의 이미지

유닉스 쉘 스크립트에 대해 궁금합니다

shp파일 얻어오는 명령어를 쉘 스크립트로 만들려고 합니다.

밑에 명령어중에 11111을 스크립트 안에 써주면 쉘 스크립트가 정상적으로 작동되는데

11111 대신 $1을 쓰고 쉘스크립트를 실행할 때 11111을 인수로 주면

sde2shp 명령이 제대로 작동이 되질 않습니다.

$1을 써서 제대로 실행되게 하는 방법좀 알려주세요 ㅠㅠ

./aaa.sh

#!/usr/bin/bash
sde2shp -o init -l LO_PO_OBNN,shape -f 11111/LO_PO_OBNN -t polygon -a all -s $LMIS11111 -i 5151 -u aaa -p aaa
sde2shp -o init -l LA_PA_OBNN,shape -f 11111/LA_PO_OBNN -t polygon -a all -s $LMIS11111 -i 5151 -u aaa -p aaa
정상작동

./aaa.sh 11111

hide0211의 이미지

directFB에 관한 질문입니다.

안녕하세요.

directFB를 이용하여 보드에 S/W를 올려 테스트 중입니다.

directFB는 터치 이벤트를 코드상으로 어떤식으로 받아서 처리하는지 문의드립니다.

검색과 예제를 봐도 잘 모르겠네요..간단한 코드라도 부탁드립니다.

감사합니다.

stylidy의 이미지

우분투 재부팅이 안됩니다,,ㅜ

우분투 10.04LTS 버전을 데스크톱 PC에 깔았습니다.
xdm 설치 후 재부팅했는데 부팅이 안되네요,,,ㅜ
부팅로고 화면 잠깐 뜨고 난후 화면에 아무것도 안나오고,, 부팅 진행이 전혀 안됩니다.
두번정도는 그냥 포맷하고 재설치해서 해결했었는데,,
세번째 이런 현상이 나타나서 근본적으로 문제를 해결해야 할 것 같아 질문 올립니다.
이런 현상을 겪으신분이 있으신지??

white-hill의 이미지

stat() lstat() 에러 Value too large for defined data type

질문이 있습니다..ㅠ ㅠ

lstat 을 이용하여 파일 뷰어를 구현하였는데...
난관에 봉착하였습니다...

4Gb 8Gb 파일에 대하여 각각
Value too large for defined data type
메세지를 토해내며...
st_mode 에서 directory 로 인식을 해 버리는 것입니다..ㅠ ㅠ

구글링을 해 보았으나...

조금 이해가 잘 되지 않아 이렇게 다시 한 번 여쭈어 보는 방법을 택했습니다.

#include
#include
#include

struct stat statbuf;

선언한 뒤... 사이즈를 직어 보았습니다.

trymp의 이미지

CPU Core 에 따라서 데몬을 어떻게 띄우는게 좋나요?


서버기능을 하는데몬을 짰습니다. 이 데몬은 패킷을 client 로 부터 받아서

패킷을 조작한 다음 다시 client 에게 전송해주는 역활을 합니다.

근데 이러한 서버데몬을 여러개 띄워서 가용성을 높이고자 합니다 (port 별 분리)

문제는 몇개정도 띄우는게 좋을 것인가가 문제인데,

CPU 논리 core 가 8개이면 데몬도 8개 띄우는게 좋나요?

아니면 더 많이 띄우는게 성능에 좋은지 궁금합니다.

또한 특정 CPU core 를 특정데몬에게로 mapping 할 수 가 있나요?

고수님들의 많은 조언 부탁드립니다.

clean11의 이미지

커널 API 문제

1. 커널이미지와 aaa라는 모듈이 있을 때, aaa라는 모듈에서 사용하는 커널API의 버전과 실제로 동작되는 커널의 버전이
일치하지 않을 경우, 어떤 문제가 발생하나요?(즉, 서로 다른 빌드환경에 의한 문제임)

2. 서로다른 빌드환경에서 생성된 커널이미지와 aaa모듈을 서로 호환되게 할 수 있는 방법이 있나요??

paeksj98의 이미지

A어플위에 B어플 이미지 보이게 하기.

A어플에서 배터리량을 표시하는 부분이 있었는데 예전에 단말기에서 배터리가 삭제되면서 관련 소스 부분을 모두 삭제 했습니다.

이번에 다시 단말기에 배터리가 추가 되었는데 기존 방법은 QWidgetStack에 화면을 차곡차곡 쌓아서 맨나중 화면만 보여지는 구조였는데

화면을 그릴때마다 배터리를 호출해서 새로 그려줬습니다.(처음 설계하신분이.....)

다시 그전처럼 작업하려니 단순하지만 너무 많은 양이고 좀 비효율 적인것 같아서요.

지금 생각은 A어플이 돌고 있으면 A화면 위에 B어플에 이미지를 맨위에 뿌리고 싶은데 가능한가요.

가능하다면 어떤 방법으로 해야 쉽게(?) 할수 있을까요.

두번째 생각하는 방법은 QWidgetStack으로 화면 처리를 하는데

쓰레드를 돌려서 일정시간마다 화면 맨위에 이미지를 계속해서 뿌리는 방법....

맨위에 뿌리는 방법을 모르겠어요......

이런경우 좀 간편하게 처리 하려면 어떻게 처리 하시나요.

lkangwoo의 이미지

[완료][C] 안녕하세요. C 로그 남기는 함수를 구현중인데 궁금한게 있습니다.

너무 초보적이라 여기 올려도 될까망설여지긴 합니다.
전 자바 프로그래밍을 원래 하다보니 요즘 리눅스 C를 회사에서 하게 되었는데 C에 대한 기초적인 개념이랄까 하는게 좀 없는 것 같습니다.

여쭤보고 싶은 것은,
로그 파일을 남기는 함수인데요. 아래와 같습니다. msg에 메시지는 항상 있을테고.. 매개변수로 문자열or숫자or아무것도 안받습니다.
이걸 처리해야하는데 함수 오버로딩이 안되니 어떤 방식이 가장 좋을까요?

1. void Log_File_Creator(char *msg, char *arg1, int arg2) 로 만들어서
Log_File_Creator("시작", NULL, NULL)
Log_File_Creator("처리 중1: ", arg, NULL)
Log_File_Creator("처리 값1: ", NULL, arg)

이런식으로 쓰는게 좋은 것일까요? 아니면..

페이지

프로그래밍 QnA 구독하기