프로그래밍 QnA

gokore의 이미지

#define usbi_dbg(fmt...) 여기서 ...이 들어갈 수가 있나요??


usbi_dbg("");
이런 코드가 있길래 ctag를 통해 들어가봤더니
아래와 같은 코드가 있었습니다.
fmt...은 ctag에 잡히질 않는데 인자에 ...이 있다는 것 자체가 이해가 안되는데 이럴땐 어떡해야 하죠? ㅠ

#define usbi_dbg(fmt...)

declspec의 이미지

memcmp, memcpy 에 대한 질문

100KB 짜리 버퍼가 있는데
여기 있는 내용을 memcpy 를 이용해서
다른 버퍼에 함수호출 한번해서 복사하는것하고

1byte 짜리 char 형 변수를 하나 두고
버퍼를 char 형 배열로 본다음에
루프를 돌면서 1바이트씩 읽어서 다른쪽 버퍼로 직접
a[i] = b[i]; 식으로 옮기는 거랑
어떤 차이가 있나요?

memcpy 가 더 빠를까요?
빠르다면 왜 빠를까요?

마찬가지로 메모리 내용을 비교할때 memcpy 로 비교하는것이
직접 == 연산자를 써서 변수에 1~4바이트씩 담아서
비교하는것보다 빠른가요?

그리고 윈도우 API 의 BitBlt 함수를 사용할때
크기 100짜리의 그림을 DC 에 복사하는데 1의 시간이 걸린다면
크기 1000짜리의 그림을 DC 에 복사하려면 10의 시간이 걸릴까요?
BitBlt 함수를 이용해서 비트맵 버퍼에 있는것을
DC 버퍼로 옮기는 것은(메모리DC로) memcpy 보다 빠를까요? 느릴까요? 비슷할까요?

gokore의 이미지

API_EXPOTED라는게 뭔가요?

API_EXPORTED int libusb_init(libusb_context **context)
{
//함수정의
}

이렇게 되어있는데요

ctag로 API_EXPORTED로 들어가보니

#define API_EXPORTED __attribute__((visibility("default")))

이렇게 선언이 되어있습니다.

그런데 대체

__attribute__((visibility("default")))

란 뭔가요?

greatlee의 이미지

안드로이드폰에서 멀티코어 지원.

요즘 핸드폰 구경하다보면 멀티코어제품들이 많이 나오는데요..
그때마다 좀 해깔립니다.

안드로이드 플랫폼은 리눅스커널에 자바vm을 올린것으로 알고 있습니다. 그런데 vm이라는물건이 하나의 코어만을 사용할 수 있도록 설계된것이 아닌가요?

하나의 코어가 하나의 프로세스를 사용하는 프로세스모델에 충실하게 구현되어있는걸 이전 프로젝트에서 확인한적도 있었구요.. (자바 1.4때였습니다). 최신 1.7버전의 api문서를 봐도 프로세스나 쓰레드에 코어를 지정할수 있는 메소드들은 안보이네요.

안드로이드에서 사용하는 vm은 이 프로세스 모델을 개선해서 vm이 두개의 코어를 사용할 수 있는것인가요?
아니면 vm을 두개 올려서 서로간에 원격통신을 하듯이 작업하게 되나요?

하여간 자바라는 원죄를 가진 안드로이드플랫폼에서 멀티코어 제품이 나오는걸 보면 희안하기도 하고.. 혼란스럽기도 하네요.
vm개선이 없다면.. 멀티코어 안드로이드는 무용지물이며.. 배터리 소모량만 많은 물건이 되어버리는데.. 정말 그렇다면 소비자로써 화를 내야 하는건지..

coathanger의 이미지

특정프로그램 파일점유 시 강제 Handle 종료시키기

개발환경은 Windows, VS2008입니다.

간혹 특정 폴더 내에 있는 파일을 다른 프로그램이 Open하여 점유한 상태가 있습니다.
반드시 해당 파일을 이동시켜야 하는데 다른 프로그램이 Open한 상태라서.. 계속 무한 반복 시도를 하고 있습니다..
코드상에서 Unlocker라는 프로그램 처럼 특정 파일을 점유하는 Handle을 해제하려면 어떤식으로 해결 해야 하는지 알고 싶습니다.
예제나 관련 사이트가 있으면 부탁드립니다.

감사합니다..

bingry의 이미지

buddy system ( 버디 시스템 ) 에서 4MB 이상 메모리는 할당받지 못하나요?

Zone allocator 를 공부하고 있습니다.
각 zone 에 buddy system 이 연속된 메모리를 할당해 주면서 단편화를 방지해준다 까지는 이해가 되는데요.

기존에 그리던 이해의 그림이랑 연결이 안되는 부분이 있습니다.

page frame 을 1,2,4,...1024(4MB) 의 group 으로 나누어서 관리한다는 것인데.
다 더해보면 기껏해야 8MB 밖에 관리하지 못합니다.

zone : DMZ(128) , Normal(896M), Highmem 등은 8M 보다 훨씬 큰데요.

1. 버디시스템으로 이큰 영역을 다 관리할 수 있나요?
2. 버디시스템을 제가 잘 못 이해하고 있나요?
3. 만약 10M 를 할당받으려고 하면 어떻게 가능할까요?

감사합니다.

karma1209의 이미지

Hadoop과 웹페이지 연동

하둡을 설치하고 하둡 내의 HDFS 안에 파일을 읽고 쓰고 검색하는 프로그램을 개발하고자 합니다.

기본적으로 웹페이지를 통해 HDFS 내의 파일에 대한 제어를 하고 싶은데

하둡과 웹페이지의 연동은 어떻게 진행을 해야하나요?

NameNode 내에 웹서버를 설치하고 HDFS 내의 파일에 대한 제어가 가능한가요?

주변에 하둡을 해본 사람도 없고 구글에서도 하둡의 설치만 다루지 다른 정보가 없어 답답합니다.

고수님들께서 방향성을 제시해주세요.

익명 사용자의 이미지

윈도우 메시지 후킹 관련 질문 입니다.

안녕하세요~

서버쪽 작업만 쭉 해오다가 갑자기 윈도우 관련 작업 할일이 생겼는데 막막합니다.

질문은...

win32, C++, C# 등으로 특정 어플리케이션의 다이얼로그 창을 제어 할 수가 있는지 궁금합니다.

예를 들어서 윈도우메모장을 실행 시킨후 서식->글꼴을 누르면 글꼴 팝업 다이얼로그가 나오는데 이를 외부 어플리케이션에서 제어가 가능한지가 궁금합니다.

외부 어플리케이션은 데몬형태로 특정 어플리케이션(예를들어 메모장)의 팝업다이얼로그의 메시지를 후킹한다음 해당 다이얼로그가 뜨면 그 다이얼로그를 닫는다던지 하는 이런 동작을 의미합니다.

현재로서는 이게 가능한지 여부도 잘 모르겠는데요.

가능한지 여부와, 거기에 더해서 어떤방식으로 구현해야하는지까지 조언해주신다면 더할나위없이 감사하겠습니다.

그럼 수고하세요~

tjdshtjq의 이미지

filesystem(using FUSE)제작도중 에러 발생..(E200: *ReadPre)

FUSE를 이용해서 filesystem을 만들고 있었는데요

어느정도 만들고 마운트를 시킨다음 파일을 열려고하니까

"E200: *ReadPre autocommands made the file unreadable"

이런 에러메시지가 뜨면서 어떤 파일도 열수가 없더군요..

마치 READ-ONLY파일같이 열리면서 저런 메시지와함께 파일내용도 볼수없고 수정도 할수가 없네요 ㅠㅠ

오직 삭제명령어만 된답니다..

혹시 저 에러메시지의 이유는 아시는분 있으시면 도움의 손길주시면 감사하겠습니다 ㅠ_ㅠ

페이지

프로그래밍 QnA 구독하기