ディバイスドライバの改造、製作にまつわる情報交換、質問、
噂話、ぐち、政治、経済に関するスレです。できる限り生産的にいきましょーや。
ディバイスドライバをハックしよう!
■ このスレッドは過去ログ倉庫に格納されています
1login:Penguin
02/01/31 01:14ID:t3s191ys02/02/01 10:02ID:wGSa/qxe
ディバイディングドライバァァァァーッ!!
02/02/01 10:21ID:RSGobFLl
02/02/01 10:35ID:a6zdq5Rc
36login:Penguin
02/02/01 10:51ID:Oxc8LS21 喧嘩は〜やめて〜争わ〜ないで〜
>>33
承認
モジュールをつくる
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/linux/drivers/module.html
デバイスドライバ開発入門
http://www.net-newbie.com/linux/driver/
Linux 拡張ボードデバイスドライバの作り方
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/research/library/drivers/make_dd.html
>>10へ
http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.2/ioctl-number.txt.html
>>33
承認
モジュールをつくる
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/linux/drivers/module.html
デバイスドライバ開発入門
http://www.net-newbie.com/linux/driver/
Linux 拡張ボードデバイスドライバの作り方
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/research/library/drivers/make_dd.html
>>10へ
http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.2/ioctl-number.txt.html
37login:Penguin
02/02/01 10:53ID:Oxc8LS21 お馬さん 2ndEdition タダで読めますよ
http://www.xml.com/ldd/chapter/book/index.html
http://www.xml.com/ldd/chapter/book/index.html
02/02/01 11:02ID:0zxTeFbY
>>37 サンクスコ
ちなみに23の説明は楽しかった。
ちなみに23の説明は楽しかった。
02/02/01 11:35ID:0DxQaaOu
>3ガバス
ガバスって、ファミ通だっけ?デバイスと関係なのでsage
ガバスって、ファミ通だっけ?デバイスと関係なのでsage
02/02/01 13:40ID:fvbQ/5zX
02/02/01 14:38ID:HC9Yhxcp
デバイスドライバーだけじゃないけどさ
ソフトバンクからでてるLinuxのプログラム本と
詳細なKernel(2.2系)の本はあった方がいいかなぁ・・・
ソフトバンクからでてるLinuxのプログラム本と
詳細なKernel(2.2系)の本はあった方がいいかなぁ・・・
43login:Penguin
02/02/01 15:00ID:OYnwkLox とりあえず、ここまでのレスは全部読んで
なんとなく概要は理解できた気がするのですが、、。
お仕事でドライバの事少し勉強しなければいけませんので、
ソースから学ぼうと思ってるんですが。
Linux2.4系のKernelソースの中で
全く、ドライバをやった事の無い初心者にも
わかりやすいソースってどれでしょうか?
どなたか有識者で知ってらっしゃる方はいらっしゃいませんか?
「お馬さん」は2.2系の日本語を読んでますけど、
非常に難解です、、。
Kernelが2.4系なので、
文献も英語しかなく、
読解力のないわたしは苦しんでいます。(^^;)
ここを良スレと見込んでよろしくお願いしますm(_ _)m
なんとなく概要は理解できた気がするのですが、、。
お仕事でドライバの事少し勉強しなければいけませんので、
ソースから学ぼうと思ってるんですが。
Linux2.4系のKernelソースの中で
全く、ドライバをやった事の無い初心者にも
わかりやすいソースってどれでしょうか?
どなたか有識者で知ってらっしゃる方はいらっしゃいませんか?
「お馬さん」は2.2系の日本語を読んでますけど、
非常に難解です、、。
Kernelが2.4系なので、
文献も英語しかなく、
読解力のないわたしは苦しんでいます。(^^;)
ここを良スレと見込んでよろしくお願いしますm(_ _)m
44login:Penguin
02/02/01 15:14ID:4diOANaQ02/02/01 17:42ID:Oxc8LS21
02/02/01 22:46ID:Pc1hsWFQ
/*
* $Id: joydev.c,v 1.19 2001/01/10 19:49:40 voj
tech Exp $
*
* Copyright (c) 1999-2000 Vojtech Pavlik 
;
* Copyright (c) 1999 Colin Van Dyke 
;
*
* Joystick device driver for the input&n
bsp;driver suite.
*
* Sponsored by SuSE and Intel
*/
// さぁ、いよいよはじまりました、Linuxドライバーコメント2002、
// 実況はわたくしモモナイ、解説はおなじみサキサカさんです。
// サキサカさん、今日はよろくお願いします。
// はいはい、よろしく。
// サキサカさん、本日のカードはkernel 2.4.16のdriver/input/joydev.cです
が、
// しょっぱなから、このファイルというのはどうなんでしょうか?
// 単に作者の23が、>>45の言葉どおりキャラクタデバイスから読もうとして、
// 一番手頃なのがこれだったようですよ。
// 23ということは、いつものコメンテーターと作者が違うようですね。
// そうそう。http://pc.2ch.net/test/read.cgi/prog/1011188426/215-281とは
// 作者がちがうんで、私も心配しちょる。
// また煽られて逆上しませんか?
// 本人も、O<^Z=6:\Y2と思ったようだから大丈夫でしょう。
// むしろ、途中で飽きるんじゃないかな?
// そのあたり、読者の応援の声が欲しいところ。
// ところで作者は、joydev.cのGPLの表記を消してしまったようですが、
// 大丈夫でしょうか?
// まぁCopyright (c)は残したから、いいんじゃないかね。
// ともあれ、Linuxドライバーコメント2002 Round1 joydev.c
// いよいよスタートです。
// この放送は等幅フォント対応で、2chよりお伝えします!
* $Id: joydev.c,v 1.19 2001/01/10 19:49:40 voj
tech Exp $
*
* Copyright (c) 1999-2000 Vojtech Pavlik 
;
* Copyright (c) 1999 Colin Van Dyke 
;
*
* Joystick device driver for the input&n
bsp;driver suite.
*
* Sponsored by SuSE and Intel
*/
// さぁ、いよいよはじまりました、Linuxドライバーコメント2002、
// 実況はわたくしモモナイ、解説はおなじみサキサカさんです。
// サキサカさん、今日はよろくお願いします。
// はいはい、よろしく。
// サキサカさん、本日のカードはkernel 2.4.16のdriver/input/joydev.cです
が、
// しょっぱなから、このファイルというのはどうなんでしょうか?
// 単に作者の23が、>>45の言葉どおりキャラクタデバイスから読もうとして、
// 一番手頃なのがこれだったようですよ。
// 23ということは、いつものコメンテーターと作者が違うようですね。
// そうそう。http://pc.2ch.net/test/read.cgi/prog/1011188426/215-281とは
// 作者がちがうんで、私も心配しちょる。
// また煽られて逆上しませんか?
// 本人も、O<^Z=6:\Y2と思ったようだから大丈夫でしょう。
// むしろ、途中で飽きるんじゃないかな?
// そのあたり、読者の応援の声が欲しいところ。
// ところで作者は、joydev.cのGPLの表記を消してしまったようですが、
// 大丈夫でしょうか?
// まぁCopyright (c)は残したから、いいんじゃないかね。
// ともあれ、Linuxドライバーコメント2002 Round1 joydev.c
// いよいよスタートです。
// この放送は等幅フォント対応で、2chよりお伝えします!
02/02/01 22:52ID:c8Ppl2p2
#include <asm/io.h>  
; // さぁ、ソースのほうは順調に
#include <asm/system.h> // イン
クルードが進んでおります。
#include <asm/segment.h> // 本日は、/u
sr/src/linux/includeには、
#include <linux/delay.h> // grepと共
にレポーターのヤブナカさんが
#include <linux/errno.h> // 逝っており
ます。ヤブナカさ〜ん?
#include <linux/joystick.h> //*はい!ヤブナカです!今日はヘッ
ダが
#include <linux/input.h> //*いっぱいなので
、findも一緒に待機して
#include <linux/kernel.h> //*万全の体制です!
#include <linux/major.h> // 後程、なに
か不明なマクロなどありましたら
#include <linux/slab.h> // お願
いしま〜す
#include <linux/mm.h> //*
はい!了解です!
#include <linux/miscdevice.h> // さてサキサカさん、インクルードも後
半に
#include <linux/module.h> // 来ましたが、std
io.hが無いようですね?
#include <linux/poll.h> // そ
ういうボケはどうでもいいけど、
#include <linux/init.h> // 「
カーネル」って雰囲気は満点だね。
#include <linux/smp_lock.h> // どうやらインクルードも無
事終了しました。
02/02/01 22:53ID:c8Ppl2p2
// さて、始めは定義の類が続きます
#define JOYDEV_MINOR_BASE 0&nbs
p; // サキサカさん、この_BASEって何でしょうか?
#define JOYDEV_MINORS &nb
sp; 32 // 他のinputデバイスとメジャ
ー番号を共有
#define JOYDEV_BUFFER_SIZE 64&n
bsp;// するための工夫だね
 
; &nbs
p; // でも、input.hで宣言しなくてい
いのかなぁ
struct joydev { // さぁ、ここで構造体の
定義です。
int exist; // サキサカさん、ここで定義というのはど
うでしょう?
int open; // あたりまえだけど、joydev.c内
部向けってことだね。
int minor; // あまり他のドライバに応用が効く部分
じゃないでしょ。
struct input_handle handle; // でも、
wait_queue_head_t wait; //
devfs_handle_t devfs;
struct joydev *next;  
; // あ、リンクの様相です。
struct joydev_list *list; //&nbs
p; 複数デバイスが考えられる時の定番ですね
struct js_corr corr[ABS_MAX]; // このあたりの構造体
は、使い方がはっきり
struct JS_DATA_SAVE_TYPE glue;// した時点で、ヘッダを参
照したいと思います
int nabs;
int nkey;
__u16 keymap[KEY_MAX - BTN_MISC]; // さて、こ
のあたりの定数ですが...
__u16 keypam[KEY_MAX - BTN_MISC]; // キーと
ボタンがごっちゃだね。
__u8 absmap[ABS_MAX]; // ここらのABSってなんでしょ?
__u8 abspam[ABS_MAX]; // うーん、よくわからないなぁ
__s16 abs[ABS_MAX]; // それでは聞いてみましょう。ヤブナ
カさーん?
};
#define JOYDEV_MINOR_BASE 0&nbs
p; // サキサカさん、この_BASEって何でしょうか?
#define JOYDEV_MINORS &nb
sp; 32 // 他のinputデバイスとメジャ
ー番号を共有
#define JOYDEV_BUFFER_SIZE 64&n
bsp;// するための工夫だね
 
; &nbs
p; // でも、input.hで宣言しなくてい
いのかなぁ
struct joydev { // さぁ、ここで構造体の
定義です。
int exist; // サキサカさん、ここで定義というのはど
うでしょう?
int open; // あたりまえだけど、joydev.c内
部向けってことだね。
int minor; // あまり他のドライバに応用が効く部分
じゃないでしょ。
struct input_handle handle; // でも、
wait_queue_head_t wait; //
devfs_handle_t devfs;
struct joydev *next;  
; // あ、リンクの様相です。
struct joydev_list *list; //&nbs
p; 複数デバイスが考えられる時の定番ですね
struct js_corr corr[ABS_MAX]; // このあたりの構造体
は、使い方がはっきり
struct JS_DATA_SAVE_TYPE glue;// した時点で、ヘッダを参
照したいと思います
int nabs;
int nkey;
__u16 keymap[KEY_MAX - BTN_MISC]; // さて、こ
のあたりの定数ですが...
__u16 keypam[KEY_MAX - BTN_MISC]; // キーと
ボタンがごっちゃだね。
__u8 absmap[ABS_MAX]; // ここらのABSってなんでしょ?
__u8 abspam[ABS_MAX]; // うーん、よくわからないなぁ
__s16 abs[ABS_MAX]; // それでは聞いてみましょう。ヤブナ
カさーん?
};
02/02/01 22:56ID:c8Ppl2p2
/************************input.h*************************************/
#define KEY_PROG4 203
#define KEY_SUSPEND 205 //*はい!ヤブナカです!
#define KEY_CLOSE 206 //*ただいまinput.hの300行付
近にいます!
#define KEY_UNKNOWN 220 //*ここまでがキーボードの番号で
#define BTN_MISC 0x100 //*ここからマウスや他
のコードが
#define BTN_0 0x100 //*ふ
られているいる様子です!
#define BTN_1 0x101 //*こ
こからですね...
#define BTN_2 0x102 //*さ
、カメラさんこっち来て!
// (略)
#define BTN_JOYSTICK 0x120 //*この付近、330行あたりで
#define BTN_TRIGGER 0x120 //*ジョイスティック向けの番号があっ
て、
#define BTN_THUMB 0x121 //*さ、こっちこっち
// (略)
#define BTN_TOUCH 0x14a //*はい、このあたり!
#define BTN_STYLUS 0x14b //*タッチパネルらしき
#define BTN_STYLUS2 0x14c //*定義を最後に
#define KEY_MAX 0x1ff //*全てのキーが
出そろうようです!
//*また、このすぐ後に Relative acesとAbsolute axesというコメントが
//*続くようです!
// input.hからは以上です!
// joydev.cにお返しします!
/********************************************************************/
// はい、ありがとうございました。
// キーボードとその他のボタンで統一的に管理してるけど
// ここではジョイスティックで使うかもしれない分だけにしてるんだね
// ABSはRELと対になって絶対値と相対値。アナログコントローラの話かな。
// とりあえず、CMです。
#define KEY_PROG4 203
#define KEY_SUSPEND 205 //*はい!ヤブナカです!
#define KEY_CLOSE 206 //*ただいまinput.hの300行付
近にいます!
#define KEY_UNKNOWN 220 //*ここまでがキーボードの番号で
#define BTN_MISC 0x100 //*ここからマウスや他
のコードが
#define BTN_0 0x100 //*ふ
られているいる様子です!
#define BTN_1 0x101 //*こ
こからですね...
#define BTN_2 0x102 //*さ
、カメラさんこっち来て!
// (略)
#define BTN_JOYSTICK 0x120 //*この付近、330行あたりで
#define BTN_TRIGGER 0x120 //*ジョイスティック向けの番号があっ
て、
#define BTN_THUMB 0x121 //*さ、こっちこっち
// (略)
#define BTN_TOUCH 0x14a //*はい、このあたり!
#define BTN_STYLUS 0x14b //*タッチパネルらしき
#define BTN_STYLUS2 0x14c //*定義を最後に
#define KEY_MAX 0x1ff //*全てのキーが
出そろうようです!
//*また、このすぐ後に Relative acesとAbsolute axesというコメントが
//*続くようです!
// input.hからは以上です!
// joydev.cにお返しします!
/********************************************************************/
// はい、ありがとうございました。
// キーボードとその他のボタンで統一的に管理してるけど
// ここではジョイスティックで使うかもしれない分だけにしてるんだね
// ABSはRELと対になって絶対値と相対値。アナログコントローラの話かな。
// とりあえず、CMです。
02/02/01 22:57ID:c8Ppl2p2
げ、ぶち切れてる。鬱死....
02/02/01 23:02ID:Oxc8LS21
改行が挟まらなければ 相当おもしろい企画になる・・・
マジ良スレの予感
マジ良スレの予感
52CMまで前半
02/02/01 23:46ID:bMJKgu48 begin 644 2ch_joydev1.txt.bz2
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
M*$UHT7`(&DP8!4,QM;<7EZX0(P%7B[8@3T`)H21SX0.IL&>`DE08L*`8A
AW#!TY]Z\9@*S`]*GHI*TF5"K@6UJ/_XNY(IPH2`0BE\:
`
end
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
M*$UHT7`(&DP8!4,QM;<7EZX0(P%7B[8@3T`)H21SX0.IL&>`DE08L*`8A
AW#!TY]Z\9@*S`]*GHI*TF5"K@6UJ/_XNY(IPH2`0BE\:
`
end
53CMまで後半
02/02/01 23:47ID:bMJKgu48 begin 644 2ch_joydev2.txt.bz2
M0EIH.3%!6293649+3QL``@#_G_40!`!H<_](?O_?ZK___^H_?O____OWQ;_^
MG!-@!$.*+,U@:WVR[<-"F*:8*GFA&D::,:GJ/*'I&U`]/5-&U`T/4`]0T])Z
MFF(#$`T#!```]0`!HD-)II/TAI,RFU,"9I1M$VIZ$T-``&@``9`````#1HT-
M`/U31Y(@9,$9,"-,0TPC$-,`$8$8"#)ID-&0T!B8"8A@)B--,3`F`2)$F33*
MI^TE/R:C4>IZ3`@]0/4;4?J0-/4-H0&]4]0```````R`,$T&@@9,$9,"-,0T
MPC$-,`$8$8"#)ID-&0T!B8"8A@)B--,3`F`:FDD])H,U``--&@```&0R,U&C
M(`````````R8$#1D8@3N:?BL#MGS.7=3&L7Y(,I:K2FCSU8[D>8$R++4E275
MXCRD!AW.?$9;QOZJV(B`HWT^E`+-+=ZZA18(GD$2*OZD)`"6,2P^&PX1&\^1
MNW_`IK&'6X6"X0K$-P#(2#(4E$'J@4,1BSN9Y)30R&4C"2&\DP1N,J2F;DD*
M??N%,@`9JA1ONIE?*U&;M+X"L&`-&O@4-QFD0]1DQI#:;[WH]0;W!UC(57`5
M)F&<"FJ^ZO)$>/Y!%&K>O6CKIHBM!V;O6$L&3PZ$`QM.6+.2N"G"\K@2-Y3M
MN(1<?/2L"[email protected],THXW9O3WZ6?/*OML15<L&&AF0:Z"6T:]Y+0:GM3G
M=8"LVHKVL&.ROZJ<F&TO:"QRKFL&R+;2MD"@@=.S%Q.]0TK5&%+RO,W>^E+9
MV[&]%8K(A0$*+((:KC&@Y//61-0M<Y`.'1;`7CB2*I2AC,;K%":&ZK9@JH58
M(BID&`X"`ERY`:!JED15I6ZUC+!$VWF%E9#Q$3@2[,080$D13N4QGF"=#DX7
MJY6S$DPJ42LC+YT<49[31KES2(HRR`03GG(I*+]=X+.FDV7"EGRNN(5JM
M6RRXMPW[80PC355&1RD\4A4!<+1K\_4"4D7V6FPD5R6-#)W9.$TA@#1]V;96
MS]=UJ-G*5\,F=5ZE@SZJ1_,KL0$3$M/MP&,HP+CURG%\7[$S^;2EIML32;?O
M-"8[BJ:UIZ5OB?FQ?IF\\7'#MX^>;Z-#LOQ.@F8Z`5Z!?AQ<4Z`2^NB6]15\
M':-'1VR%2'HJM&[6^J?CG29$ZZG2H5`A(V@OYX18]2SJ2JK,&$KB^A6&:D'_
ML\_W5OTJGU'X"9.TI98C,C,L(PC.;;_*[0E3""*\9N=HMT@/P+5\'CD?3,M1
ML:O<6#4O$,+6;,+TQD\#N5&5HJZ+FE#8?=JH^QJRE'3ML,ZEW'Z](5)C%:5*
MPM0P)HV7`;PAH2,>F9C5JO0*"HBIQ8J,AR!JFWAQJ&**2V,DU[[+4BX8PW4J
MMK-/PQ3VB!OS&LF,&S_=1,.*)M`-I*A%!)NKA1)$N]J7P.7,P+4`H;X/R61S
ME7>$+U<6.>U2Y%!8QJ\"3"-V(XFBY2KC)DB`I*,D3=N:L&G="[0ACT+H:_
M5'97^OP=K%F[RFM59TF,%Q&MZA?ZXDFDV8QJL:4@"(Q`B(D4SF#'^B45`3(P
M,#@A+HG,9`*P#V((`!80::S4MI(A)-DR,S#,IGB"J$Z0@9<@GXL$T$&BA%Y.
M*[+H4,6@GEW4+3:GOX-9-RZN6+%V)/J,&E27I3W,T%\-<T:MM7!F[>=214/8
M8D1GA+>C<MB00UAK(4D=Y+/OJZ:1@F2A1,L6EB(M5@&S`'E3;.(T"K`R%T&"
M`:-DZ3"@8<2:^&1Q/NV`PQ""P",ZX0()QA`=74[4.A1!8PLB`;38L34?\B)1
=!)C:,L0V)L&C5"05)*J-`)!.&+N2*<*$@C):>-@`
`
end
M0EIH.3%!6293649+3QL``@#_G_40!`!H<_](?O_?ZK___^H_?O____OWQ;_^
MG!-@!$.*+,U@:WVR[<-"F*:8*GFA&D::,:GJ/*'I&U`]/5-&U`T/4`]0T])Z
MFF(#$`T#!```]0`!HD-)II/TAI,RFU,"9I1M$VIZ$T-``&@``9`````#1HT-
M`/U31Y(@9,$9,"-,0TPC$-,`$8$8"#)ID-&0T!B8"8A@)B--,3`F`2)$F33*
MI^TE/R:C4>IZ3`@]0/4;4?J0-/4-H0&]4]0```````R`,$T&@@9,$9,"-,0T
MPC$-,`$8$8"#)ID-&0T!B8"8A@)B--,3`F`:FDD])H,U``--&@```&0R,U&C
M(`````````R8$#1D8@3N:?BL#MGS.7=3&L7Y(,I:K2FCSU8[D>8$R++4E275
MXCRD!AW.?$9;QOZJV(B`HWT^E`+-+=ZZA18(GD$2*OZD)`"6,2P^&PX1&\^1
MNW_`IK&'6X6"X0K$-P#(2#(4E$'J@4,1BSN9Y)30R&4C"2&\DP1N,J2F;DD*
M??N%,@`9JA1ONIE?*U&;M+X"L&`-&O@4-QFD0]1DQI#:;[WH]0;W!UC(57`5
M)F&<"FJ^ZO)$>/Y!%&K>O6CKIHBM!V;O6$L&3PZ$`QM.6+.2N"G"\K@2-Y3M
MN(1<?/2L"[email protected],THXW9O3WZ6?/*OML15<L&&AF0:Z"6T:]Y+0:GM3G
M=8"LVHKVL&.ROZJ<F&TO:"QRKFL&R+;2MD"@@=.S%Q.]0TK5&%+RO,W>^E+9
MV[&]%8K(A0$*+((:KC&@Y//61-0M<Y`.'1;`7CB2*I2AC,;K%":&ZK9@JH58
M(BID&`X"`ERY`:!JED15I6ZUC+!$VWF%E9#Q$3@2[,080$D13N4QGF"=#DX7
MJY6S$DPJ42LC+YT<49[31KES2(HRR`03GG(I*+]=X+.FDV7"EGRNN(5JM
M6RRXMPW[80PC355&1RD\4A4!<+1K\_4"4D7V6FPD5R6-#)W9.$TA@#1]V;96
MS]=UJ-G*5\,F=5ZE@SZJ1_,KL0$3$M/MP&,HP+CURG%\7[$S^;2EIML32;?O
M-"8[BJ:UIZ5OB?FQ?IF\\7'#MX^>;Z-#LOQ.@F8Z`5Z!?AQ<4Z`2^NB6]15\
M':-'1VR%2'HJM&[6^J?CG29$ZZG2H5`A(V@OYX18]2SJ2JK,&$KB^A6&:D'_
ML\_W5OTJGU'X"9.TI98C,C,L(PC.;;_*[0E3""*\9N=HMT@/P+5\'CD?3,M1
ML:O<6#4O$,+6;,+TQD\#N5&5HJZ+FE#8?=JH^QJRE'3ML,ZEW'Z](5)C%:5*
MPM0P)HV7`;PAH2,>F9C5JO0*"HBIQ8J,AR!JFWAQJ&**2V,DU[[+4BX8PW4J
MMK-/PQ3VB!OS&LF,&S_=1,.*)M`-I*A%!)NKA1)$N]J7P.7,P+4`H;X/R61S
ME7>$+U<6.>U2Y%!8QJ\"3"-V(XFBY2KC)DB`I*,D3=N:L&G="[0ACT+H:_
M5'97^OP=K%F[RFM59TF,%Q&MZA?ZXDFDV8QJL:4@"(Q`B(D4SF#'^B45`3(P
M,#@A+HG,9`*P#V((`!80::S4MI(A)-DR,S#,IGB"J$Z0@9<@GXL$T$&BA%Y.
M*[+H4,6@GEW4+3:GOX-9-RZN6+%V)/J,&E27I3W,T%\-<T:MM7!F[>=214/8
M8D1GA+>C<MB00UAK(4D=Y+/OJZ:1@F2A1,L6EB(M5@&S`'E3;.(T"K`R%T&"
M`:-DZ3"@8<2:^&1Q/NV`PQ""P",ZX0()QA`=74[4.A1!8PLB`;38L34?\B)1
=!)C:,L0V)L&C5"05)*J-`)!.&+N2*<*$@C):>-@`
`
end
02/02/01 23:49ID:bMJKgu48
只今、続き作成中です。それまで>>52-53の美しい映像(?)でお楽しみ下さい。
m(__)m
m(__)m
02/02/02 00:16ID:81i4zM55
struct joydev_list { // 先程、一部の地域で画像が乱れ、
struct js_event buffer[JOYDEV_BUFFER_SIZE]; // お見苦しい
int head; // 点があったようです。お詫びいたします。
int tail; // まぁ、字下げを1にしたし、文字も減らして
int startup;// どうにかなるかな?
struct fasync_struct *fasync; // お、なにやらsyncできるみたいだ。
struct joydev *joydev; // こちらは、先程の構造体ですね。
struct joydev_list *next; // やはり、ここもリストだね。
};
static struct joydev *joydev_table[JOYDEV_MINORS];
// さぁ、ここで変数定義!
// 一応、外部からはアクセスできないね。
// マイナー分だけ確保してるけど、
// joydev_list.joydevとの関係が気がかりだねぇ
// 配列の値はポインタのようですが?
// 領域を動的に確保することで
// 不必要に肥大化するのを防いでるんだね
MODULE_AUTHOR("Vojtech Pavlik <[email protected]>"); // おっと!?
MODULE_DESCRIPTION("Joystick device driver");
MODULE_LICENSE("GPL"); // ここでマクロの登場だ。意味は大体わかりますね。
MODULE_SUPPORTED_DEVICE("input/js"); // suseもちゃんと貢献してるねぇ
// この後いよいよ関数の登場です。
// たのしみだね、モモナイさん
// 私は、23がどこまで理解できるか心配ですが...お願いしますよ
// サキサカさん!
// そう言われても、結局書くのは23ですからねぇ...
struct js_event buffer[JOYDEV_BUFFER_SIZE]; // お見苦しい
int head; // 点があったようです。お詫びいたします。
int tail; // まぁ、字下げを1にしたし、文字も減らして
int startup;// どうにかなるかな?
struct fasync_struct *fasync; // お、なにやらsyncできるみたいだ。
struct joydev *joydev; // こちらは、先程の構造体ですね。
struct joydev_list *next; // やはり、ここもリストだね。
};
static struct joydev *joydev_table[JOYDEV_MINORS];
// さぁ、ここで変数定義!
// 一応、外部からはアクセスできないね。
// マイナー分だけ確保してるけど、
// joydev_list.joydevとの関係が気がかりだねぇ
// 配列の値はポインタのようですが?
// 領域を動的に確保することで
// 不必要に肥大化するのを防いでるんだね
MODULE_AUTHOR("Vojtech Pavlik <[email protected]>"); // おっと!?
MODULE_DESCRIPTION("Joystick device driver");
MODULE_LICENSE("GPL"); // ここでマクロの登場だ。意味は大体わかりますね。
MODULE_SUPPORTED_DEVICE("input/js"); // suseもちゃんと貢献してるねぇ
// この後いよいよ関数の登場です。
// たのしみだね、モモナイさん
// 私は、23がどこまで理解できるか心配ですが...お願いしますよ
// サキサカさん!
// そう言われても、結局書くのは23ですからねぇ...
02/02/02 01:11ID:O2jPWcD7
// ついに関数が来ました!
// 名前からすると、データ補正かな?
static int joydev_correct(int value, struct js_corr *corr)
{
// あれ、見慣れない構造体が...
//*モモナイさん!モモナイさん!
// なにやら「値」が来てるなぁ
//*モモナイさん!
// はいはい、ヤブナカさん?
//*今joystick.hに来ているんですが、sturct js_corrについての
//*情報が得られました!
// はい、カメラお渡しします。
/************************joystick.h**********************************/
//*只今、include/linux/jyostick.hの75行目付近に来ています!
/*
* Types and constants for get/set correction
*/
//*どうやら、この付近で補正の為の定数等を定義してるようです!
#define JS_CORR_NONE 0x00 /* returns raw values */
#define JS_CORR_BROKEN 0x01 /* broken line */
//*データがナマの場合と壊れた場合を分けているようです
struct js_corr {
__s32 coef[8]; //*このあたり、coefや
__s16 prec; //*precが何の略なのか
__u16 type; //*全くナゾです。
}; //*こちらからは以上です!
/********************************************************************/
// はい、ありがとうございました。
// なんだかわかったようなわからないような...
// 作者がそもそもjoydev.cがどういう物か理解してないからねぇ
// 名前からすると、データ補正かな?
static int joydev_correct(int value, struct js_corr *corr)
{
// あれ、見慣れない構造体が...
//*モモナイさん!モモナイさん!
// なにやら「値」が来てるなぁ
//*モモナイさん!
// はいはい、ヤブナカさん?
//*今joystick.hに来ているんですが、sturct js_corrについての
//*情報が得られました!
// はい、カメラお渡しします。
/************************joystick.h**********************************/
//*只今、include/linux/jyostick.hの75行目付近に来ています!
/*
* Types and constants for get/set correction
*/
//*どうやら、この付近で補正の為の定数等を定義してるようです!
#define JS_CORR_NONE 0x00 /* returns raw values */
#define JS_CORR_BROKEN 0x01 /* broken line */
//*データがナマの場合と壊れた場合を分けているようです
struct js_corr {
__s32 coef[8]; //*このあたり、coefや
__s16 prec; //*precが何の略なのか
__u16 type; //*全くナゾです。
}; //*こちらからは以上です!
/********************************************************************/
// はい、ありがとうございました。
// なんだかわかったようなわからないような...
// 作者がそもそもjoydev.cがどういう物か理解してないからねぇ
02/02/02 01:14ID:O2jPWcD7
switch (corr->type) {//さぁ、分岐した!
case JS_CORR_NONE: // rawなときだね。
break; // そのまま逝くようです。
case JS_CORR_BROKEN: // こちらは壊れた時のようですが?
value = value > corr->coef[0] ? (value < corr->coef[1] ? 0 :
((corr->coef[3] * (value - corr->coef[1])) >> 14)) :
((corr->coef[2] * (value - corr->coef[0])) >> 14);
// ははぁ、coef[0]-coef[1]の範囲から値がでてるとき、coef[2,3]で
// 適当にあわせつつ値を直しているんだな。
break; // 直してから先に進むようです。
default: // さて、その他。
return 0; // やることが解らんときは、何もしないで帰る、と。
}
if (value < -32767) return -32767; // おーっと、±32767の挟み打ち!
if (value > 32767) return 32767; // signed 16 bitかな。
// この関数も終りにきたぞ!
return value; // BROLENの補正のみやってるね
}
// 関数第一ラウンド、なんとか終了となりました。
// Linuxドライバーコメント2002、/usr/src/linux/driver/input/joydev.cより
// 2chでお送りいたしております。
// まだ続ける気かねぇ
case JS_CORR_NONE: // rawなときだね。
break; // そのまま逝くようです。
case JS_CORR_BROKEN: // こちらは壊れた時のようですが?
value = value > corr->coef[0] ? (value < corr->coef[1] ? 0 :
((corr->coef[3] * (value - corr->coef[1])) >> 14)) :
((corr->coef[2] * (value - corr->coef[0])) >> 14);
// ははぁ、coef[0]-coef[1]の範囲から値がでてるとき、coef[2,3]で
// 適当にあわせつつ値を直しているんだな。
break; // 直してから先に進むようです。
default: // さて、その他。
return 0; // やることが解らんときは、何もしないで帰る、と。
}
if (value < -32767) return -32767; // おーっと、±32767の挟み打ち!
if (value > 32767) return 32767; // signed 16 bitかな。
// この関数も終りにきたぞ!
return value; // BROLENの補正のみやってるね
}
// 関数第一ラウンド、なんとか終了となりました。
// Linuxドライバーコメント2002、/usr/src/linux/driver/input/joydev.cより
// 2chでお送りいたしております。
// まだ続ける気かねぇ
02/02/02 09:46ID:whMMNTAJ
おもしろい!(w
59login:Penguin
02/02/02 23:09ID:OVfU0W3z うえ
60login:Penguin
02/02/03 00:07ID:zajX165D ちなみに、元祖モモナイさん達は
http://pc.2ch.net/test/read.cgi/prog/1011188426/201-300
このあたりにいらっしゃいます。
キャラ貸してくれたコメンテータさん、ありがとう!
# つーか事後承諾だったけど...
http://pc.2ch.net/test/read.cgi/prog/1011188426/201-300
このあたりにいらっしゃいます。
キャラ貸してくれたコメンテータさん、ありがとう!
# つーか事後承諾だったけど...
61login:Penguin
02/02/03 00:09ID:BzrcOmdf もういいよ。
sunは倒産。
SGIも倒産。
HPもWSから撤退。
IBMもWSから撤退。
NECもWSから撤退。
世界にはPCしかなくなりました。
OSもLinuxしかなくなりました。
犬厨の望む世界になりました。
終了。
sunは倒産。
SGIも倒産。
HPもWSから撤退。
IBMもWSから撤退。
NECもWSから撤退。
世界にはPCしかなくなりました。
OSもLinuxしかなくなりました。
犬厨の望む世界になりました。
終了。
6223
02/02/03 02:51ID:KGnsKyPB そうか、もういいのか....(鬱
63login:Penguin
02/02/03 14:14ID:P0SAPnI+64login:Penguin
02/02/04 18:52ID:NNgCZ8vd65login:Penguin
02/02/04 23:07ID:2sAhIg4J >57
いいぞ!続きを!
いいぞ!続きを!
66login:Penguin
02/02/05 15:21ID:iaI23jTt >65 同感。
でも、もう少し読みやすい(見やすい)とうれしんだけどな。
でも、もう少し読みやすい(見やすい)とうれしんだけどな。
67login:Penguin
02/02/05 18:54ID:F3yqU4bD 「予想される近未来」
・Linuxに市場を荒らされ全ての商用UNIXが撤退。
・Windowsは順調に売れて市場を拡大。
・エンタープライズ用途でのLinuxの駄目さ加減が発覚してみんな困る。
・みんなしょうがなくWindowsに移行する。
・Linuxはカーネルの分裂により大混乱。商用用途で使い物にならなくなる。
・Windowsしかなくなる。
・Linuxに市場を荒らされ全ての商用UNIXが撤退。
・Windowsは順調に売れて市場を拡大。
・エンタープライズ用途でのLinuxの駄目さ加減が発覚してみんな困る。
・みんなしょうがなくWindowsに移行する。
・Linuxはカーネルの分裂により大混乱。商用用途で使い物にならなくなる。
・Windowsしかなくなる。
02/02/05 19:58ID:EBSnoi/G
02/02/05 20:26ID:YUE4G5dx
サーバはどうか知らんが
結局ごちゃごちゃでも便利なものから離れられない。windowsは無くならんのは当然だが
linuxもWindowsがGPLにでもならん限り無くならんと思うなあ。
そのうち良くなるだろ。
もしBeOSみたいなのがでてきても、よっぽど革新的でFreeでないと、また往っちゃうよ
結局ごちゃごちゃでも便利なものから離れられない。windowsは無くならんのは当然だが
linuxもWindowsがGPLにでもならん限り無くならんと思うなあ。
そのうち良くなるだろ。
もしBeOSみたいなのがでてきても、よっぽど革新的でFreeでないと、また往っちゃうよ
02/02/05 20:59ID:UUxecaUS
コピペにマジレスカコワルイ
71login:Penguin
02/02/05 21:21ID:JQSzVmkT 5年程度のスパンで見ると、Linuxは産業用の組み込み系のOSと
して活躍するでしょう。
また、IBM系のリナックスも順調にシェアを伸ばしていくでしょう。
PCではWindowsが制覇するでしょう。
して活躍するでしょう。
また、IBM系のリナックスも順調にシェアを伸ばしていくでしょう。
PCではWindowsが制覇するでしょう。
72login:Penguin
02/02/13 10:11ID:Ocy9V5oG モジュールを組み込むとき、変数が渡せるものもいくつかあるけど
そのときに どの変数が渡されているかあとで知る手段ってない?
例えば sb.o とかなら irqとかいろいろ渡せるよね。
insmodしたその後で irqいくつだったか忘れたときとか
知る手段無いよね。
あと、ついでに どの変数が渡せるかを事前に知りたい。
ソースみりゃわかるけど面倒くさいじゃん。
そのときに どの変数が渡されているかあとで知る手段ってない?
例えば sb.o とかなら irqとかいろいろ渡せるよね。
insmodしたその後で irqいくつだったか忘れたときとか
知る手段無いよね。
あと、ついでに どの変数が渡せるかを事前に知りたい。
ソースみりゃわかるけど面倒くさいじゃん。
73login:Penguin
02/02/13 11:37ID:QvFCkM3Q /proc以下のファイルで確認すればいんじゃないの?
02/02/14 02:48ID:z04c7JYX
ディバイスドライバをファックしよう!
75BERO
02/04/02 18:12ID:zlzOuE7v デバイスドライバの解説って
「デバイスにはchar型とblock型があって・・charデバイスの実装サンプル」
で終わってるのが多いんだけど、
実際はソレを生で使ってることは少なくて、サウンドデバイス、CD-ROMデバイス、FlashROMデバイス、ビデオデバイスとか
デバイスごとのフレームワークがあって、実際のハードウェアドライバはその下にくるようになってる。
実験機器や自作ハードで生のI/Oポートをたたけるだけでいい、ていうのならともかく、
(フレームワークが存在するような)一般的なハードウェアでは、このテのデバドラ解説ってのは参考にならない。
ファイルシステムドライバとかもこの範疇に入らないし。
みたところ各フレームワークの解説ってのはみあたんなくて、結局ソースにあたるしかない。
ところが既存のソースも、古いコードが残ってたり、そこからのコピペと思しき不要なコードが紛れ込んでたりして、
どれをリファレンス実装として参考にしたらいいのやら、って感じでアタマいたくなる。
「デバイスにはchar型とblock型があって・・charデバイスの実装サンプル」
で終わってるのが多いんだけど、
実際はソレを生で使ってることは少なくて、サウンドデバイス、CD-ROMデバイス、FlashROMデバイス、ビデオデバイスとか
デバイスごとのフレームワークがあって、実際のハードウェアドライバはその下にくるようになってる。
実験機器や自作ハードで生のI/Oポートをたたけるだけでいい、ていうのならともかく、
(フレームワークが存在するような)一般的なハードウェアでは、このテのデバドラ解説ってのは参考にならない。
ファイルシステムドライバとかもこの範疇に入らないし。
みたところ各フレームワークの解説ってのはみあたんなくて、結局ソースにあたるしかない。
ところが既存のソースも、古いコードが残ってたり、そこからのコピペと思しき不要なコードが紛れ込んでたりして、
どれをリファレンス実装として参考にしたらいいのやら、って感じでアタマいたくなる。
76login:Penguin
02/04/05 22:06ID:swoFdSIN >>75
本物?
本物?
02/04/05 22:15ID:CU/0IjiI
まぁ、アゲられついでに75さんにLinux界に伝わる格言を一つ。
「動けば正義」
「動けば正義」
02/05/08 17:01ID:kXDZWtdP
>77
VBプログラマに通ずるものがある(w
VBプログラマに通ずるものがある(w
02/05/12 06:02ID:i/O/fiuU
>>77
イイ言葉だ....
イイ言葉だ....
02/06/25 11:32ID:h8q+RUm7
お馬さん本買ってきて、サンプルコードをftp.ora.comからダウンロード
しようと思ったのに、ftp.ora.comがつながんねーYO!
どなたかftp.ora.com/pub/examples/linux/drivers/の中身を
ミラーしていただけないでしょうか?
しようと思ったのに、ftp.ora.comがつながんねーYO!
どなたかftp.ora.com/pub/examples/linux/drivers/の中身を
ミラーしていただけないでしょうか?
02/06/26 10:26ID:MG8jc7TY
すみません。ftp.ora.comにつながりましたので、>>80はなしにしてください。
これだけではなんなので、同じ壁に突き当たるかもしれない人へ:
お馬さん本のサンプルソースは、筆者のサイト
ftp://ar.linux.it/pub/ldd2/ からもダウンロードできます。
これだけではなんなので、同じ壁に突き当たるかもしれない人へ:
お馬さん本のサンプルソースは、筆者のサイト
ftp://ar.linux.it/pub/ldd2/ からもダウンロードできます。
82login:Penguin
02/08/14 00:47ID:2q+/MEDi age
02/08/14 00:52ID:udiJKVSV
02/08/16 07:53ID:c0C09J9f
糞コードをハケーン!!
じっとガマンして保守に付き合うのはプロ
とっとと書き直すのはアマ
じっとガマンして保守に付き合うのはプロ
とっとと書き直すのはアマ
85login:Penguin
02/08/16 14:43ID:S24KMUAB02/08/17 02:23ID:D5BAubdc
たとえ糞コードでも動いているものであれば余計なことをしないのが当然だろ。
元と全く同じ動作をしれば何事も無く済むが僅かでも挙動が変わったりバグが入ったりしたら
周囲に迷惑をかけることになるのだから、
勝手に書き直すようなまねをしでかすのはアマチュアか怖いもの知らずの無分別な若造。
元と全く同じ動作をしれば何事も無く済むが僅かでも挙動が変わったりバグが入ったりしたら
周囲に迷惑をかけることになるのだから、
勝手に書き直すようなまねをしでかすのはアマチュアか怖いもの知らずの無分別な若造。
02/08/17 03:47ID:L76cjPXx
サン電子U-cableP5のドライバはいずこ?
IOのケーブルはLinux対応してまっか?DDIに聞いたら
Linuxは独自のOSですので当社では判りかねます。
つーかWinはMS独自のOSだしMacもMac独自のOSでは?
製作者及び団体の数ではWinの方が独自性が強いと思うのですが
先生方!教えてくだはい
IOのケーブルはLinux対応してまっか?DDIに聞いたら
Linuxは独自のOSですので当社では判りかねます。
つーかWinはMS独自のOSだしMacもMac独自のOSでは?
製作者及び団体の数ではWinの方が独自性が強いと思うのですが
先生方!教えてくだはい
02/08/17 16:48ID:OXP9X1ng
02/08/17 16:55ID:OXP9X1ng
仕事としてソース非公開なLinux用ドライバ開発なんぞをやってます。
>>75の言ってる事は同感。
drivers/char/serial.cなんかを見てると情けなくて泣きたくなってくる。
「動けば正義」は否定しないけど、「動いたら放置」ってのはちょっと
なぁ。
Linuxだと、なら「ならお前が書き直せ」ってことになるんだけど、正直
どこから手をつければいいのか、途方にくれるようなドライバが多すぎ
る。
>>75の言ってる事は同感。
drivers/char/serial.cなんかを見てると情けなくて泣きたくなってくる。
「動けば正義」は否定しないけど、「動いたら放置」ってのはちょっと
なぁ。
Linuxだと、なら「ならお前が書き直せ」ってことになるんだけど、正直
どこから手をつければいいのか、途方にくれるようなドライバが多すぎ
る。
02/08/17 17:21ID:MTVVTQyw
88>書ければWinでネットしません!
02/08/17 20:48ID:Zdf5lEt8
サン電子は「ドライバ書くので情報くれ」といってもくれない会社だから
どうしようもない。
どうしようもない。
02/08/17 23:46ID:IR8qSaOk
じゃIO・DATAさんでも良いよ。
H"用のUSBケーブルで32kパケット通信(つなぎ放題)対応って2つしか無いのね!
9月にサンデンシから新しい奴が出るけどWinとMacのみ対応だし・・・・
H"用のUSBケーブルで32kパケット通信(つなぎ放題)対応って2つしか無いのね!
9月にサンデンシから新しい奴が出るけどWinとMacのみ対応だし・・・・
02/08/18 19:29ID:XonFUm75
02/08/20 04:33ID:EFxDYaWg
U-cableP5ならどっかにドライバ落ちてなかったか?
02/08/21 02:27ID:++pf5YT/
94>落ちてたけどウチのPCはFDも無いしCD−Rも無いから意味無し
それ以前にturboLinux7でドライバの入れ方知らんから無意味
Turboじゃなくても知らないが・・・
完全マスターTurboLinux読んで頑張ってみます。
お騒がせしました。
それ以前にturboLinux7でドライバの入れ方知らんから無意味
Turboじゃなくても知らないが・・・
完全マスターTurboLinux読んで頑張ってみます。
お騒がせしました。
96login:Penguin
02/08/22 00:52ID:hok07Wzb 昔DOS3.1の時代に、プリンターのデバイスドライバーをひとつ一機種に
ついて書くたびに50万円もらっていた友達をしっている。
非常においしい商売だったようだ。
ついて書くたびに50万円もらっていた友達をしっている。
非常においしい商売だったようだ。
97login:Penguin
02/09/17 02:52ID:uJTVD8V1 今さらあげてしまいますが、オライリーのドライバの本に書いてある。
file構造体がなにをやっているのかよくわかりません。というかその存在自体が疑問です。file_operation構造体はinit_moduleによって登録されるってのはわかるんですが、file構造体はどんなときに使われるとかよくわかりません。
デバイスドライバで2番目に重要な構造体と書いてあったのでかなり意味があると思うのですが、
くだ質できく内容でないと判断したので、ここで聞かせて下さい。
file構造体がなにをやっているのかよくわかりません。というかその存在自体が疑問です。file_operation構造体はinit_moduleによって登録されるってのはわかるんですが、file構造体はどんなときに使われるとかよくわかりません。
デバイスドライバで2番目に重要な構造体と書いてあったのでかなり意味があると思うのですが、
くだ質できく内容でないと判断したので、ここで聞かせて下さい。
02/09/17 22:14ID:2Yzp0rLg
>>97
Linux のドライバは(一部除いて)ファイルで表されてるわけです。
/dev/配下にいっぱいありますよね?
そのファイルをopen すればfile_operations 構造体のopen メソッドが呼ばれる。
そのファイルをread すればfile_operations 構造体のread メソッドが以下略。
多分システムコールかデバイスファイルについて知識不足なんだと思われ。
なぜ存在自体が疑問なのか書いてる途中でわけわかんなくなってきたよヽ(`Д´)ノウワァァン
ちなみにここでつまずいてたらその本絶対読めないから教えてくれる人探した方がいい。。。
Linux のドライバは(一部除いて)ファイルで表されてるわけです。
/dev/配下にいっぱいありますよね?
そのファイルをopen すればfile_operations 構造体のopen メソッドが呼ばれる。
そのファイルをread すればfile_operations 構造体のread メソッドが以下略。
多分システムコールかデバイスファイルについて知識不足なんだと思われ。
なぜ存在自体が疑問なのか書いてる途中でわけわかんなくなってきたよヽ(`Д´)ノウワァァン
ちなみにここでつまずいてたらその本絶対読めないから教えてくれる人探した方がいい。。。
99login:Penguin
02/09/18 03:24ID:AWtWYegc ありがとうございました。
どうやらfile_operations構造体の次にでてきたので、
デバイスドライバ特有の構造体かと勘違いしてしまったようですが、
低水準システムコールのときのfile構造体と同じだったんですね。
わかったみたいです。
一応半分位まで読みました。なんとなくですがわかったきがするので、
音なるやつでも書いてみることにします。
どうやらfile_operations構造体の次にでてきたので、
デバイスドライバ特有の構造体かと勘違いしてしまったようですが、
低水準システムコールのときのfile構造体と同じだったんですね。
わかったみたいです。
一応半分位まで読みました。なんとなくですがわかったきがするので、
音なるやつでも書いてみることにします。
02/09/19 00:16ID:YeCer3VV
02/09/19 01:00ID:Zca/tfIP
デバイスドライバで、file構造体って見ることあります?
漏れ、見たことないんですが。
漏れ、見たことないんですが。
02/09/24 08:38ID:jDkNy+Lt
age
02/09/24 10:47ID:oRAD0jRL
久々に上がってたりして...で亀レス
>>101
一つのドライバで複数のデバイスを制御(特に割り込み)する時に
使わない? (private_data)
static な領域にデータ置いといてベタで検索でもいいけど...
>>101
一つのドライバで複数のデバイスを制御(特に割り込み)する時に
使わない? (private_data)
static な領域にデータ置いといてベタで検索でもいいけど...
104ねここねこ
02/09/24 12:11ID:jDkNy+Lt デバイスドライバを書くときに使う各種マクロや関数などが
詳しく&解りやすく載っている資料とか無いでしょうか?
謎の関数が多くて、、、、
詳しく&解りやすく載っている資料とか無いでしょうか?
謎の関数が多くて、、、、
02/09/24 16:20ID:oRAD0jRL
>>104
>37 にある Linux DeviceDriver 2nd Edition
これを wget で落して(いいのか?) grep で検索しる。
あとはお決まりのソース drivers/char 以下を検索かな?
>37 にある Linux DeviceDriver 2nd Edition
これを wget で落して(いいのか?) grep で検索しる。
あとはお決まりのソース drivers/char 以下を検索かな?
107ねここねこ
02/09/26 16:00ID:3O4ltuCq >105
やっぱり、それしかないですか、、、
馬の本見てがんばります
さらに質問
ハードを直接叩く(?)デバイスドライバを作っているのですが
良いサンプルとか無いでしょうか?
とりあえずは、
linux/drivers/char/qpmouse.c
あたりを参考にしてるのですが、、、
やっぱり、それしかないですか、、、
馬の本見てがんばります
さらに質問
ハードを直接叩く(?)デバイスドライバを作っているのですが
良いサンプルとか無いでしょうか?
とりあえずは、
linux/drivers/char/qpmouse.c
あたりを参考にしてるのですが、、、
02/09/26 17:52ID:l3dRzYLM
>>107
お馬さんで充分かと...
> ハードを直接叩く(?)デバイスドライバを作っているのですが
これだけでサンプルないかって言われてもなぁ。
誰もレス出来ないんじゃぁ?
マウスドライバでも作ってんの?
レス出来ないかも知んないけど。
お馬さんで充分かと...
> ハードを直接叩く(?)デバイスドライバを作っているのですが
これだけでサンプルないかって言われてもなぁ。
誰もレス出来ないんじゃぁ?
マウスドライバでも作ってんの?
レス出来ないかも知んないけど。
02/09/26 18:12ID:7zzSbQve
>>107
ターゲットと同じ種類のドライバ
or
似たような構造のハードを制御するドライバ
が一番いいサンプルなんだが。
目的のハードがどんな物かわからんので誰も答えられんと思う。
物によって微妙に作りが違うし。
ターゲットと同じ種類のドライバ
or
似たような構造のハードを制御するドライバ
が一番いいサンプルなんだが。
目的のハードがどんな物かわからんので誰も答えられんと思う。
物によって微妙に作りが違うし。
110ねここねこ
02/09/27 09:39ID:2CKrLbeR >108&109
確かに、物が不明だとわからないですね
物はFPGAというチップ経由で
データがやってくるハードのようです
外部のチップからFPGAにある程度データが貯まると
IRQをキックして(?)まとめてデータをCPUに対して送ってくるとか
言ってたな、、、
実はハードがまだ出来ていなかったり〜
確かに、物が不明だとわからないですね
物はFPGAというチップ経由で
データがやってくるハードのようです
外部のチップからFPGAにある程度データが貯まると
IRQをキックして(?)まとめてデータをCPUに対して送ってくるとか
言ってたな、、、
実はハードがまだ出来ていなかったり〜
02/09/27 12:01ID:Bk3J3OAM
>>110
> 実はハードがまだ出来ていなかったり〜
よくある話。
まだ漠然としているが、画像処理か計測系だね?
割り込み関係と poll、 DMA or mmap? 、PCI?。
まず、このあたりをお馬さんで理解すればよろしいかと。
> 実はハードがまだ出来ていなかったり〜
よくある話。
まだ漠然としているが、画像処理か計測系だね?
割り込み関係と poll、 DMA or mmap? 、PCI?。
まず、このあたりをお馬さんで理解すればよろしいかと。
112ねここねこ
02/09/30 09:38ID:ILjZfqgw >111
>まだ漠然としているが、画像処理か計測系だね?
だいたいそんな感じです
お馬さん本見てがんばります
>まだ漠然としているが、画像処理か計測系だね?
だいたいそんな感じです
お馬さん本見てがんばります
02/10/03 20:49ID:XOS3kDwu
FPGAというチップってあーた
114ねここねこ
02/10/04 10:18ID:reYTaTWA >113
なんか呼び方が変なのでしょうか?
FPGAというICが有ると効いたのですが、、、
なんか呼び方が変なのでしょうか?
FPGAというICが有ると効いたのですが、、、
115ねここねこ
02/10/04 10:18ID:reYTaTWA あと、デバイスドライバ製作の資料になるようなページ
Linux PCI デバイスドライバ
http://www.hemamu.com/dev/linux/pci/index.html
Programmed I/O (PIO)を用いた簡単なPCIデバイスドライバ
http://www-online.kek.jp/~yasu/Kenshu/pci-device-driver.html
Linux Module-HOWTO
http://www.linux.or.jp/JF/JFdocs/Module-HOWTO.html
Linuxデバイスドライバ開発ノート
http://www2s.biglobe.ne.jp/~nunokawa/Linux/DD/
Linuxによるロボット制御・デバイスドライバ開発
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/linux/
Linux用デバイスドライバの作成
http://ap.fukushima-iri.go.jp/LinuxDeviceDriver/LinuxDeviceDriveMAIN.htm
LinuxデバイスドライバFAQ
http://www-online.kek.jp/~yasu/Kenshu/faq.html
エンジニアリングLinux応用技法
カーネル/デバイスドライバ/ポーティング/リアルタイム
http://www.cqpub.co.jp/hanbai/books/522070.htm
色々調べると
ロボット系の人が多いような気がします
SFに出てくるガレージでオリジナル2足歩行ロボットを作る
時代が来たのかな?
Linux PCI デバイスドライバ
http://www.hemamu.com/dev/linux/pci/index.html
Programmed I/O (PIO)を用いた簡単なPCIデバイスドライバ
http://www-online.kek.jp/~yasu/Kenshu/pci-device-driver.html
Linux Module-HOWTO
http://www.linux.or.jp/JF/JFdocs/Module-HOWTO.html
Linuxデバイスドライバ開発ノート
http://www2s.biglobe.ne.jp/~nunokawa/Linux/DD/
Linuxによるロボット制御・デバイスドライバ開発
http://www.mechatronics.mech.tohoku.ac.jp/~kumagai/linux/
Linux用デバイスドライバの作成
http://ap.fukushima-iri.go.jp/LinuxDeviceDriver/LinuxDeviceDriveMAIN.htm
LinuxデバイスドライバFAQ
http://www-online.kek.jp/~yasu/Kenshu/faq.html
エンジニアリングLinux応用技法
カーネル/デバイスドライバ/ポーティング/リアルタイム
http://www.cqpub.co.jp/hanbai/books/522070.htm
色々調べると
ロボット系の人が多いような気がします
SFに出てくるガレージでオリジナル2足歩行ロボットを作る
時代が来たのかな?
116login:Penguin
02/10/06 18:35ID:URuHDkGy hack! age
117login:Penguin
02/10/17 21:17ID:RGYfSOtJ age
118login:Penguin
02/12/13 10:20ID:NJ02XiJx うおータコがドライバ書くのってやっぱ無理があるなー
でも仕事だしがんばるぞーちくしょー
でも仕事だしがんばるぞーちくしょー
119IP記録実験
03/01/08 22:12ID:KwFqEkll IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
http://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
03/01/09 01:09ID:kgNvzzS1
なんとか頑張って下さい>ひろゆき
お金は持ってないけど応援します。
お金は持ってないけど応援します。
03/01/09 01:23ID:kgNvzzS1
ひろゆきは早起きのし過ぎでちょっと壊れてるな。
03/01/09 01:33ID:kgNvzzS1
>>532
プ
プ
123IP記録実験
03/01/09 01:55ID:AmicprCv IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
http://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
03/01/09 02:06ID:0uJfVOg+
名スレの予感
03/01/09 02:50ID:yayiRGlu
福島もキタ━━━━━━(゚∀゚)━━━━━━ !!!!
03/01/09 03:34ID:TPkK0Va9
>>81
まぁそういうところでよしゆきはすごいわな。
まぁそういうところでよしゆきはすごいわな。
127山崎渉
03/01/15 11:31ID:m6zO97qQ (^^)
128ドライバー
03/01/15 13:09ID:I5ofFU+k いまLynxEMのドライバいじってるんだけど、
マルチディスプレイに成功した人います?
もう何年も放置されてる問題だから無理なのかな…?
マルチディスプレイに成功した人います?
もう何年も放置されてる問題だから無理なのかな…?
03/01/15 18:11ID:nk4F1IDO
130login:Penguin
03/02/05 19:41ID:YQeAwX++ 保守age
131login:Penguin
03/02/07 19:54ID:jVRQXDIx 1ms以下のタイミングでポーリングを監視する方法って何かないですか?
やっぱ割り込み使わんと無理?
やっぱ割り込み使わんと無理?
03/02/07 20:36ID:0UoE11AV
133
03/02/07 21:50ID:VKdRg4g7■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【通信】ahamo初の値上げ 「大盛りオプション」撤廃、40GB・60GB・120GBの3段階制に [自治郎★]
- 第2次大戦に触れトランプ氏「米中は同盟国」、当時は中華民国…「抗日」巡る中国の言説補強する恐れ ★8 [蚤の市★]
- 「暗い未来に子供を産みたくない…」それでも左派よりも右派の方が「たくさん子供を産む」のはなぜか【米研究】 ★2 [首都圏の虎★]
- 高市首相「日米は和解し、強い絆で結ばれた同盟国」…トランプ氏「米中は同盟国」発言による懸念打ち消す ★2 [少考さん★]
- 「習氏より先に言うとは…」 トランプ氏同盟国発言、日本政府内に困惑 ★3 [蚤の市★]
- 【サッカー】イエロー6枚、水を強奪、主審を追い回す…北朝鮮戦を前によみがえる3年前の蛮行 [ゴアマガラ★]
- 日本、天気までジャップみたいに陰湿で暗くなってしまう…1ヶ月間もwwwwwwwwwwww [668024367]
- jcだよ質問ある??
- 新着スレ監視して一生懸命に否定レス
- がーいって一度気に入った単語を連呼するよな
- 電車乗ると客がスマホイジって下向いてて顎然とするよな…昭和平成中期なら絶対にありえない、みんな前向いてたよ? [779857986]
- 過度な円安は金融市場が誤解したせいだった!!片山財務大臣が指摘 [668970678]