프로그래밍 QnA

windower의 이미지

Device Driver 관련 예제를 분석중입니다

간단하게 가상 메모리를 동적으로 할당하고
거기에 읽고 쓰는 메모리 Device Driver를 분석하고 있습니다.
간단히 쏘스는 아래와 같습니다.

[code:1]
#include <linux/kernel.h>
#include <linux/module.h>

#include <linux/fs.h>
#include <linux/kdev_t.h>
#include <asm/uaccess.h>

#define DEVICE_NAME "minibuf"
#define BUFFER_LEN 1024

// Global variables
static int s_nMajor = 0;
static int s_bDeviceOpen = 0;
static char s_strBuf[BUFFER_LEN];
static int s_nBufPos = 0, s_nBufEnd = 0;

// Function Prototypes

jsmak의 이미지

timezone 설정 어떻게 해야되나요..

run time시 timezone 설정 어떻게 가능한지 궁금합니다.
settimeofday 에서 timezone설정은 하지 말라고 되어있고
리눅스 설정파일에서 timezone설정을 바꾸고
어플리케이션에서 getlocattime으로 읽으면 timezone설정이
전혀 되어있질 않네요..
timezone설정 바꿀수있는 system call이 있나요???

nhw의 이미지

[에러메세지 의미가 궁금합니다]

freebsd 입니다.

어느순간 아래메세지가 나오면서 서버가 재부팅됩니다.

어떤의미인지 아시는 고수님들의 답변부탁드립니다.

Fatal trap 12 : page fault while in kernel mode
fault virtual address = 0x8
fault code = supervisor read, page not present
instruction pointer = 0x8:0xc01cf0c4
stack pointer = 0x10:0xc031ac64
frame pointer = 0x10:0xc031ac6c
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres1, def 32 1, gram 1
processor eflags = interrupt enabled, resume, IOPL = 0

holysds의 이미지

계정자동생성시에../...

제가 여기저기 뒤져서 /etc/skel/autouser.sh 라는 파일 만들어서 useradd라는걸 했는데 계정폴더안에 autouser.sh라는 파일만 생기고 아무것도 되질 않습니다.....제생각엔 제가 사용법을 몰라서 그런거 같습니다..

1.사용자계정 생성시 파일시스템설정부분

2.밑에 예에서 $1을 가져오는 방법과 왜 패스워드도 $1인지??

워낙 초보이니 자세히 가르쳐 주셨으면 합니다...그럼 감사합니다.

# 사용자계정생성 Start
/usr/sbin/useradd $1
echo " 사용자 Password 를 입력하십시요 "

i_wish_awk_sed_perl의 이미지

하나의 파일을 헤더파일로 분리하기.

하나의 파일에서 필요한 부분만 헤더파일로 만들어 둘려고 합니다. 하지만 생각처럼 쉽게 되지 않아서 이렇게 글을 올립니다. 다음의 소스에서 가장 모범적인 헤더파일 만들기는 어떻게 해야 할지요?

[code:1]

/*************************************************************************
* header
* **********************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include "2.h"

/*************************************************************************
* function prototype

kuks1의 이미지

gcc에서 인라인 어셈 쓰는법!!

:evil:

gcc에서 인라인 어셈 쓰는법 좀 가르쳐 주세요.

dos시절에는 기냥

asm mov ax,어쩌구~

이런식으로 했는데,

리눅스에선 어떻게 해야하죠?

간단한 소스 예제를 곁들여 주시면 감사하겠습니다. T_T

cutecat의 이미지

c 언어 scanf에서 그냥 엔터만 입력했는지 어떻게 확인하나요?

for(i=0;i<10;i++)
{
scanf("%f", &a[i]) ;
if(a[i]==NULL) break ;
}

위와 같이 scanf로 입력받은 값이 없으면 입력 받는 작업을 중단하려 합니다
그런데 그냥 엔터만 입력했는지는 어떻게 확인할 수 있나요?
위 예처럼 NULL이나 '\0' 을 사용해봐도 안되던데요

akfgoakfgo의 이미지

CVS + kernel

커널을 받아서 CVS에 import해서 개발을 하려고 하는데, 특정 디렉토리가 import가 안됨니다.

아래와같이 import를 하면,

cvs import -m "linux-2.6.6" linux-2.6.6 vendor_linux release_2_6

아래와 같이 문제의 메시지가 나옮니다.

"I"가 ignore의 약자 같은데, 유독 "core"라는 이름의 디렉트리만 무시되면서 import가 안됩니다.

뭐가 문제 인가요 ??

--------------------
.................
cvs import: Importing /home/freeman/FreemanBeing/CVS_ROOM/linux-2.6.6/drivers/usb
I linux-2.6.6/drivers/usb/core
N linux-2.6.6/drivers/usb/Kconfigcvs import: Importing /home/freeman/FreemanBeing/CVS_ROOM/linux-2.6.6/sound

jagalchee의 이미지

htons(0) 을 이용해서 정한 랜덤 포트번호는 언제 결정되는 건가

랜덤 포트 번호를 생성할 때, htons(0) 을 사용하면 되는 것으로 알고 있습니다.
그런데 제가 궁금한것은 랜덤 포트가 어느 시점에서 결정되는 건지가 궁금합니다.

아래의 3가지 경우중 어느 시점에 랜덤 포트가 결정되는지요? 그리고 확인 할 수 있는 방법은 없나요?

1) a.sin_port = htons(0); 한 후에 바로 포트 번호가 결정된다.
2) socket(); 한 후에 바로 포트 번호가 결정된다.
3) bind(); 한 후에 바로 포트 번호가 결정된다.

당근 3) 번 이후엔 반드시 결정되어야 하는 건 확실하지만, 그 전에 정해져 있는지가 궁금합니다.

theyoung의 이미지

유저 쉘을 만들려고 합니다.

ㅠ,.ㅠ 약 2시간 동안 인터넷을 검색하고

해봤지만 유저가 직접 쉘을 만드는 것에 대해 나온

강좌나 소스를 구하기 ㅡㅡ;; 가 아니라 하나도 못구했습니다

ㅠ,.ㅠ 그냥 답답해서 여러분들의 정보를 알고자 합니다.

밑에 검색해보니 홍릉 출판사에서 나온 책에 관련 소스와

강좌가 있다고 하는데 무슨책인지 혹시 제목 아시는분 알려주심

감사하겠습니다. ^ㅁ^ 그리고 관련 소스 및 정보 알고 계신분

리플좀 ㅠ,.ㅠ 부탁드립니다. 정말 찾기 힘드네요.. 관련 사이트라도

페이지

프로그래밍 QnA 구독하기