프로그래밍 QnA + 설치 및 활용 QnA

dltkddyd의 이미지

컨테이터를 직접 구현해보는 것이 의미가 있을까요?

처음 c++에 입문할 때에는 자료구조론이 왜 중요한지 물랐지만 컨테이너를 접하면서 자료구조론의 중요성에 대해 실감하고 있습니다. 컨테이너를 어떻게 구현하느냐에 따라서 엄청난 성능의 차이가 날 수 있다는 것을 컨테이너를 직접 구현해보면서 알게됐으니까요. 그나마 vector는 구현이 제법 간단하기 때문에 구현방식에 따라 엄청난 속도의 차이가 난다는 사실을 알게됐습니다. 뭐 지금도 배우는 단계이기도 하고 자료구조론의 중요성을 뒤늦게 나마 알게돼서 다행이기도 합니다만 어차피 표준에 구현된 것을 그냥 쓰면 되는 것을 이다지 컨테이터 구현에 집착하면서 만드는 것이 시간낭비는 아닐까 하는 걱정이 밀려오기도 합니다. 컨테이너 구현이라는 것이 워낙 재미있는 부분이기도 해서 표준의 구현과 속도 차이를 비교해가면서 만들고 있습니다. 그리고 제가 만들어놓은 svector(표준 vector를 구현해놓은 것)가 표준과 거의 속도 차이가 없이 제대로 작동한다는 것이 위안이 됩니다. 그래도 표준에 있는 것을 이렇게 직접 구현하는 것이 프로그래머의 입장에서 좋은 것일까요?

pse5802의 이미지

질문있습니다.

char Filename[40]={NULL}; ->전역변수로 놓았습니다.
기존의 파일이 생성되고 이제 후에 삽입을 하는 부분입니다.

int initroot()
{
FILE*fp = NULL;
fopen_s(&fp, Filename, "w");

root = NULL;

root = (struct info*)malloc(sizeof(info));

printf("Name: ");
scanf_s("%s", &root->Name, sizeof(40));

smallhuman의 이미지

함수 / 메서드 호출 관계도를 만들어주는 프로그램이 있나요?

질문 그대로입니다 ^^;;;
C언어 플젝을 하고 있는데, 함수간 호출 관계도가 있으면 소스 분석하기가 매우 편할 것 같습니다.
혹시 이런 관계도를 그래프화 시켜서 그려주는 프로그램 이름을 알 수 있을까요?

음. 덧붙여서. 객체지향의 경우 개념 자체가 조금 달라서 이런 관계도 역시 약간 달라질 것 같은데,
객체지향을 위해서도 같은 종류의 프로그램이 있나요?

parkcy0113의 이미지

다중 코어 CPU에서 클럭 수를 알아내고 싶습니다.

시스템콜을 하나 만들다가 CPU의 클록 수를 알아내야 할 일이 생겼습니다.
우선 제 /proc/cpuinfo 를 보면
processor 0과 processor 1 두 개의 프로세서가 있고
두 프로세서 모두
model name : Pentium(R) Dual-Core CPU T4200 @ 2.00GHz
cpu MHz : 1200.000
으로 기술되어 있습니다.

저는 커널 내에 구현되어 있는 cpufreq_quick_get()함수를 사용하여 CPU의 클록 수를 가져오게 하였습니다.
하지만 코어 하나만의 클록 수를 가지고 옵니다.(1200mhz) 다중 코어 CPU의 경우 전체 클록 수를 어떻게 얻을 수 있나요?

그리고 TSC레지스터는 CPU의 클록이 발생할 때마다 1씩 증가된다고 알고 있습니다.
그렇다면 다중 코어 CPU의 경우 각 코어마다 TSC레지스터가 존재하는 것인지..
아니면 하나의 TSC레지스터를 공유하는 것인지 궁금합니다.

getfeus의 이미지

On-demand로 스토리지 공간을 늘릴 수 있는 RAID 수단이 알고 싶습니다.

Linux 기반 서버를 구축하려고 생각중입니다.

필요에 따라서 스토리지를 추가로 공간을 확보 하고 싶습니다. 하드웨어를 추가로 구매하고 싶지 않고 LVM 이나, 리눅스의 소프트웨어적 수단을 통해 On-demand 로 공간이 부족해지면 디스크를 추가 구매 하여 용량을 추가 하고 싶습니다.(+ Raid-5 급의 스토리지 보호도 제공 하고 싶습니다.)

Linux 는 별도의 스토리지에 설치 될 예정이고, 장착될 스토리지는 소프트웨어적 방법으로 Raid-5로 보호 되었으면 합니다. 하드웨어적 방법으로는 Netgear 사의 X Raid 2 라는 수단을 활용 하면 된다고 들었는데, 추가적인 하드웨어 구매 예정은 없습니다.(Raid 컨트롤러도 추가 할 생각이 없습니다.)
어떠한 방법을 알아 보면 좋을지 조언좀 부탁 드립니다. 감사합니다.

cococo의 이미지

사용자가 설정하는 암호를 입력받을때, 걸러내야 할 특수기호?

안녕하십니까. 해당 문제가 발생하여 질문 드려 봅니다.

상황은 별거 없습니다. 사용자가 가입하면 ID 와 PWD 를 입력받아 DB에 넣는 건데, 넣기 전에 client 단에서 체크를 해 주려는 거죠.

근데, 이게... 좀 미묘하더군요.
ID 라면 사람들에게 "영어, 숫자만 입력해" 라고 해도 납득을 해 주는데,
PWD 를 영어 + 숫자'만' 입력받게 하면 ... 과히 좋지 않죠.

하지만 필터링의 편리함을 생각하면 특수기호 따위는 싸그리 빼버리고 싶고...
그리하여, 일단 내부적으로는

'-'(하이픈)
';' (세미콜론)
'|' ( OR )
'\'' ( 작은 따옴표 )
'`' ( 작은 따옴표? )

만 빼려고 합니다만...

이거면 될까요? 뭐 더 필요한 게 있을까요?
비슷한 고민을 하신 분들이 많을 것 같은데, 의외로 질문 / 답변 내용이 없어서 글 올려 봅니다.

이상입니다. 모두들 좋은 하루 되시기 바랍니다.

parkcy0113의 이미지

인자를 포함한 시스템 호출방법이 궁금합니다.

커널 버전: 3.2.29

제 상황은 시스템 콜 번호 외에 int형 변수 하나를 아규먼트로 하여 시스템 콜을 사용해야 합니다.
처음에 _syscall1(type, name, type1, arg1) 을 사용하였으나 컴파일 과정에서 에러가 나 찾아보니
_syscallX() 매크로는 커널 2.6.18 부터 사용되지 않는다는 것 같습니다. (man _syscall페이지에서 찾아보았습니다.)
대신에 syscall(name,arg1)과 같은 방법으로 대체될 수 있다는 정보를 찾은 후에 소스를 수정하고 재 컴파일을 하였습니다.
에러는 발생하지 않았습니다. 하지만 arg1값이 넘어가지를 않고 제가 등록한 시스템콜 번호가 arg1 대신 파라미터값으로 넘어가서 엉뚱한 결과가 출력됩니다.
심지어 syscall(name,arg1)을 syscall(name)으로 바꾸어도 같은 결과를 얻습니다.
제가 syscall()에서 인자를 넘겨주는 방법을 잘 파악하지 못하고 있는것 같습니다.
어떻게 하면 파라미터를 넘겨주면서 시스템 호출을 할 수 있나요??

sitan81의 이미지

github에 있는 소스코드를 라이브러리 jar 파일로 만드는 방법이 궁금합니다.

github에 있는 소스코드를 라이브러리 jar 파일로 만드는 방법이 궁금합니다.

정확히는
https://github.com/xetorthio/jedis/releases/tag/jedis-2.4.1

위의 소스 코드를 다운받아 보면
http://mvnrepository.com/artifact/org.apache.commons/commons-pool2/2.0

위의 라이브러리가 빠져있는것도 확인할수 있었습니다.

라이브러리가 빠진채 배포했을것 같지는 않고..
제가 무언가를 놓치고 있는것이 확실한데 그것이 무엇인지 모르겠습니다.

jedis-2.4.1.jar 파일로 만들어 라이브러리로 사용하고 싶습니다.

hodoing의 이미지

c언어 콘솔창에서 이미지를 출력할수 있나요>?

3일째 날밤새고 찾아봤지만 어렵네요
C언어 프로젝트를 하는데요
콘솔창에서 이미지를 로드해서 화면에 출력하고 싶은데
그런 사례가 없어서 미치겠어요 ㅠㅠ
근데 외국사이트에서 하나 발견했는데요 ㅠ

http://stackoverflow.com/questions/12378642/c-pixels-in-console-window
여기서 찾아봤는데요

조금이나마 가능성을 찾았습니다 ㅠ

#include
#include
#include

using namespace std;

#define PI 3.14

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기