프로그래밍 QnA

kkb의 이미지

character device 파일 대신 sysfs 파일을 쓰는 이유는?

디바이스 드라이버를 제어할 때,
sysfs를 이용해서 제어하도록 많이 구현하는데

왜 character device 파일 대신 sysfs 파일을 쓰는 건가요?

sysfs가 read, write 처리가 쉽고 간단하다는 말을 많이 듣습니다 (proc과 같이)
매개변수 형식에 따라서 다양한 입력도 가능하고요

그런데 character device 파일을 이용해도
sysfs에서 하는 것 처럼 쉽고 간단하게 read, write 처리할 수 있고 매개변수 형식에 따라 다양한 입력도 가능하지 않나요?

read 함수와 write 함수를 어떻게 구현하는지의 차이인데
sysfs에서 하는 것과 character device 파일로 하는 것의 큰 차이를 모르겠습니다

제가 보기에 sysfs의 이점은 /sys 디렉토리에서 트리로 구조화시켜주는 것이 최대 이점인 것 같은데
혹시 이 이점 때문에 sysfs를 쓰는 것인지
이점이 "구조화" 밖에 없는지 아니면 다른 장점들이 더 많은지 궁금합니다

.

sungeuns의 이미지

[완료]크기가 큰 프로젝트에서 작은 변경을 할때요~

현재 오픈소스 프로젝트(apache nutch)를 이용하여 작업을 하고 있는데요,

이게 규모가 꽤 커서 ant 를 이용하여 빌드를 합니다.

근데 조금만 수정해도, ant를 이용해서 컴파일 하려니 시간이 좀 걸리더라구요

물론 ant가 알아서 변경된 것만 컴파일 해주긴 하는데, 추가적으로 또 무슨 작업(뭘 확인하는 듯한) 을 하더군요; 제가 ant 빌드툴이나 유닛 테스트나 이런것은 잘 몰라서 뭘 하는 건진 모르겟지만,

아무튼 변경된 파일 컴파일 이외에 ant에서 막 무엇을 하다 보니 한번 컴파일 하는데 30초~1분 정도 걸리네요-_-;;

그냥 일반적인 컴파일 방식으로는 몇초면 될텐데 말이죠ㅠ

그리고, 새로운 파일을 추가해서 쓰려고 했는데요, 자바의 장점인 재활용을 활용하고자 nutch의 몇가지 클래스를 import하여 사용하려고 했거든요

라스코니의 이미지

처음 알았는데 #include <stdio.h> 뒤에 이상한 것 써도 컴파일 되네요 ^^

#include < xxx.h > digidjgidgdi

이런 식으로 해도 컴파일 되네요 ^^

왜 그런지... ㅋㅋ

deplax의 이미지

.

mwizard의 이미지

삭제해 주세요

하나 빼먹고 했네요... 삭제해 주세요..

남겨두기 창피하네요...ㅋ

shimmany의 이미지

[완료] netlink test 시 console에서는 문제없이 실행되는 코드가 rcS 에 넣으면 실행이 안되는군요...

안녕하세요 ?

구글링을 아무리 해봐도.. 뾰족한 답이 없군요...
일단 시험환경은 MPC83xx 보드에 busybox 1.2.1, kernel 2.6.18 입니다. embedded 환경입니다.

드라이버에서 netlink 로 통지하는 예제를 작성해봤습니다. 드라이버는 커널 쓰레드로 2초마다 해당 소켓으로 통지를 날립니다.
간단한 user application은 드라이버서 create한 소켓을 열고 바인딩 하고, 드라이버에서 뭔가를 보내기를 기다리는 코드입니다.

부팅 상태에서 커널 모듈을 로드하고, 응용프로그램을 실행시키면, 커널에서 해당 user application을 통지를 잘 보내고, 잘 받습니다.

stand alone으로 돌리기 위해, /etc/rc.d/rcS에 드라이버를 insmod하고, 마지막에 user application을 실행하도록 했습니다.

리붓을 합니다.

kkb의 이미지

비트 연산을 좀 간략하게 하려고 하는데

비트 연산을 좀 간략하게 하려고 합니다.

unsinged long flags = 0;

위와 같이 플래그 변수가 있고요

#define BFLAG 0x01
#define LFLAG 0x02

비트가 정의되어 있습니다 2진수로는 각각 01 과 10 이겠죠?

flags 변수에 어떤 비트가 활성화되어 있는지 확인하려고 하는데

BFLAG와 LFLAG 둘 중에 하나는 무조건 활성화되어 있어야 하지만
둘다 활성화되어 있으면 에러입니다.

즉, flag == 01 or 10 은 OK이고
flag == 00 or 11은 에러입니다.

ukyoukyo의 이미지

개발자 분들은 어떤 화면잠금 프로그램을 쓰시나요 ?


리눅스 환경입니다. 레드햇, 페도라, 우분투, 쎈트오에스 골고루 씁니다.

코딩중에 자리를 이석할때 어떠한 화면잠금 프로그램을 쓰시는지요 ?

스크린 세이버가 아니라 단축키를 눌러서 화면을 즉시 잠글 수는 없는지요 ?

윈도우즈에서 윈도우키 + L 처럼요...

domiisa의 이미지

eclipse tomcat error 문의 드립니다.

그림에서 처럼 server startup 이후 넘어가질 않습니다. 에러는 다 잡아냈는데

저랑 똑같이 작성한 사람은 실행 되더라구요.

보면 8080포트가 쓰여지고 있다는거 같은데 안쓰고있구요

8081로 포트바꿔서도 해봤는데 안됩니다.

아시는분...

trymp의 이미지

리눅스 커널에서 선점의 의미란 무었인가요???

리눅스 커널 초보입니다.

커널을 공부하는 중에 preemtive_disable() 과 preemtive_enable() 을 이용한 처리를 많이 보게 되는데요.

선점을 금지한다는게 그 구간내에서 다른 CPU에 의한 것을 금지한다는 뜻인가요?

아니면 같은 CPU 라도 다른 스레드에 의한 것을 금지한다는 뜻인가요?

선점이라는 의미가 잘 이해가 가지 않아서 질문드립니다.

아래 코드처럼 한라인사이에서도 바로 컨텍스트 스위치가 일어나서 다른 동작이 일어날 수 있는 건가요?

get_cpu_var(sockets_in_use)--;
put_cpu_var(sockets_in_use);

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

페이지

프로그래밍 QnA 구독하기