프로그래밍 QnA

ohkh0401의 이미지

[커널과모듈] input device 모듈 구조에 관한 질문입니다

리눅스 커널과 모듈에 대해서 공부하고 있습니다

커널의 여러 부분 중 peripheral device 가 어떻게 작동하는지 보고 있는데요

keyboard device driver 의 작동이 이해가 가지 않습니다

linux kernel 과 device driver development 책들을 살펴보아도 keyboard 에 대해서는 너무 기본적이라 그런지 자세히 다루지 않네요

혹은 대다수가 현재 사용되는 usb 에 초점을 맞추어 설명하더라구요

저는 일반적은 serial 이나 ps/2 방식의 키보드에 대해서 먼저 알아보고 있습니다

키보드에서 키를 입력하는 순간부터 진행을 모듈의 관점에서 정리하자면

시그널 발생 -> i8042_driver -> gpio -> gpio_keys -> atkbd driver -> keyboard -> tty

가 맞나요?

살펴본 바로는 input 모듈도 어떤 과정에서 필요하다고 생각하는데요..

besapius의 이미지

[완료] 리눅스 커널에서 메모리 관리가 이해가 안됩니다.

안녕하세요.

리눅스 커널책을 보고 있는데요. 제가 이해한 것이 맞는지 틀린지 확인이 안되서요. 혹시 아시는분 계신지요?

예를들어, 시스템이 8기가의 메모리를 가지고 있고, 스와핑은 off됐고,
시스템이 현재 메모리를 6기가 사용하고 있고, 2기가가 사용가능한 상태라고 가정할께요.

이 상태에서, (커널은 물리적으로 page frame을 zone으로 나눠서 보관하잖아요.)
그렇다면 만일, zone_A와 zone_B에 각각 1기가씩 free memory가 남아있을 경우에요.

사용자가 malloc()으로 1.5기가를 요청하면 어떻게 됩니까? (시스템 전체적으로는 2기가가 있지요.)
zone_A와 zone_B에서 알아서 1.5를 맞춰서 물리적으로는 비연속적인 page frame들이 virtual
memory management를 거치면서 연속적인 메모리로 만들어져서 사용자에게 반환되는게 맞나요?

soulofme의 이미지

root file system을 mount하지 못합니다.ㅠㅠ

안녕하세요. 항상 많은 도움을 받고있는 초보입니다.

현재 jffs2형식의 rootfs를 ext4 타입으로 바꿨는데요.

이게 증상이 좀..묘합니다.

nand파티션의 rootfs는 400메가로 잡아놓았습니다.

현재 rootfs의 용량이 350메가 정도인데, 마운트가 되지않고있습니다.

log메세지는 이하와 같습니다.

hwanikani의 이미지

static inline 함수 질문...

다음과 같은 코드가 있을때 컴파일러는 test()를 어떻게 처리 하나요?

static void test(); // declaration without inline keyword

int main()
{
extern inline void test(); // declaration with inline keyword
test(); // Does compiler consider inlining or not?
}

static void test() // definition without inline keyword
{
}

-------------------------------------------------------------------------------

좀더 extreme한 경우를 본다면:

static void test()
{
}

int main()
{
test();
}

uj100의 이미지

openwrt에서 pcap.h을 사용해서 컴파일 하는데 에러나 나요.

openwrt에서 pcap.h를 쓸려고 하는데 에러가 나서 질문 올립니당.

소스코드는 이거고요

#include
#include
#include //libpcap 헤더 포험
#include
#include
#include
#include

int main(int argc, char **argv)
{
char *dev; // 사용중인 네트웍 디바이스 이름
char *net; // 네트웍 어드레스
char *mask; // 네트웍 mask 어드레스
int ret; //
char errbuf[PCAP_ERRBUF_SIZE];
bpf_u_int32 netp; // ip
bpf_u_int32 maskp; // submet mask
struct in_addr addr;

lunaticapple의 이미지

localhost respond time 이 이상합니다,,

안녕하세요?

제가 최근에 웹사이트를 하나 만들고 운영하기 위해 집에서 서버를 돌리고 있습니다.

이쪽방면(서버, 웹프로그래밍, DB)으로 아는바가 전혀없었기에,

인터넷으로 찾아보고 해서 어찌어찌 돌리고 있는데,,

요근래 이상한 문제가 생겼습니다.

돌리기 시작한지 2개월정도 됐는데 이런적이 없었습니다..

주먹구구식으로 학습했던터라 깊이가 없습니다. 디버깅을 어떻게 해야하는지 전혀 감이 안잡혀서

구글링을 하다가, 여기 질문을 드려봅니다.

제가 운영중인 사이트는 다음과 같습니다.(아파치, PHP, MySQL, GWT 사용중)

http://gonggam.dyndns.org/voa/web/voaweb.html?pkgname=kr.zzwak7.ranking

이게 브라우저에 주소를 넣고 기다리면 respond time이 제멋대로입니다.

kwanseob의 이미지

[완료][C언어] fputs를 반복해서 이용하니 메모리에 문제가 생기네요.

숫자를 하나씩 증가시켜서 파일에 기록하는 아주 간단한 코드입니다.
하지만 코드를 돌리니 메모리가 기하급수적으로 증가하는 문제가 발생하지만, 왜그런지를 모르겠습니다.
기록하는 파일의 크기가 너무 커져서 그러는 걸까요?

코드는 아래와 같습니다.

#include
#include
#include
#include

int main() {
FILE *file;

if( (file=fopen("filePointerResult", "w")) == 0) {
printf("ERROR: file openning!!\n");
exit(1);
}

mpz_t a;
mpz_init_set_str(a, "0", 10);

while(1) {
fputs(mpz_get_str(NULL, 10, a), file);
mpz_add_ui(a, a, 1);
}

return 0;
}

익명 사용자의 이미지

gcc 최신 안정 버전이 몇인가요?

gcc 최신 안정 버전이 몇인가요?

이런거 어디 가서 확인해야 하죠?;;; 죄송...

사용하는 배포판에서 오래된 버전을 사용해서
패키지 매니저로 업그레이드 하려고 하는데
패키지 매니저에서 지원해주는 버전도 별로 낮은 거 같네요

굳이 가장 최신 버전일 필요는 없을 거 같긴 한데
가장 최신 버전으로 설치하라고 해서

패키지 매니저는 apt-get입니다

gcc 최신 안정 버전 번호만 알려주시면 됩니다

Wing_나노의 이미지

[완료]프로그래머를 꿈꾸는 학생입니다. 프로그래밍스킬에 대해 너무 혼란스럽습니다....

안녕하세요

이제 막 프로그래밍을 공부중인 컴공학생입니다.

나름대로 매일 많은시간을 집중해서 공부한다고 해도 실력이 잘 안느는것같네요...

각설하고...

오늘 교수님께서 과제를 내주셨습니다.

어느 데이터파일에서 데이터를 읽어들여 계산하는 간단한 프로그램입니다.

코딩은 전혀 문제가 안될정도로 쉬운 것이었지만..

문제는 ... 제가 이상한걸까요

전 왠만하면 유동적인 상황에 대처할 수 있게 프로그램을 짜려고 합니다. (물론 잘짠다는 소린아닙니다..)

데이터파일에 얼마만큼에 데이터가있고, 어느 데이터가 있을 지 모르는 일이니

최대한 프로그램이 많은 경우에서 돌아갈수있도록 프로그래밍을 해왔습니다.

그리고 오늘 받은 데이터파일은 몇개의 데이터가 들어있는지 알수있습니다.

근데 오늘 친구가 한걸 봤는데 주어진 데이터파일에서 몇개의 데이터를 읽어들일지 알고있으므로

딱 그만큼만 배열과 메모리를 할당해서 쓰더라고요..

확실히 코드도 간결하고 라인도 짧았습니다.

soyeon0618의 이미지

[완료] openssl api 로 publickey 의 modulus 가져오는데 문제가..

openssl api로 공개 키의 modulus 가져오는 작업을 하고있습니다.

페이지

프로그래밍 QnA 구독하기