Device drivers - Minix
This is a discussion on Device drivers - Minix ; Hello all,
I'm planning on learning my first kernel over my winter break and I
decided to work with minix. I'm planning on purchasing the book
"Operating Systems Design and Implementation" to learn how everything
works. I noticed on the ...
-
Device drivers
Hello all,
I'm planning on learning my first kernel over my winter break and I
decided to work with minix. I'm planning on purchasing the book
"Operating Systems Design and Implementation" to learn how everything
works. I noticed on the minix3.org (which I'm assuming is the official
site) that help is needed primarily on device drivers and I figured
that writing a device driver would be an excellent way for me to
understand more about the kernel. Anyone have any recommendations on
where I should start learning how to write device drivers? Would a book
about learning how to write device drivers for Linux not apply to
minix? I'm assuming not. Any input would be appreciated, thanks in
advance...
-
Re: Device drivers
erichaase@gmail.com wrote:
> Hello all,
>
> I'm planning on learning my first kernel over my winter break and I
> decided to work with minix. I'm planning on purchasing the book
> "Operating Systems Design and Implementation" to learn how everything
> works. I noticed on the minix3.org (which I'm assuming is the official
> site) that help is needed primarily on device drivers and I figured
> that writing a device driver would be an excellent way for me to
> understand more about the kernel. Anyone have any recommendations on
> where I should start learning how to write device drivers? Would a book
> about learning how to write device drivers for Linux not apply to
> minix? I'm assuming not. Any input would be appreciated, thanks in
> advance...
>
A book about writing Linux driver WOULD help, just not very much. try
"Operating Systems, Design and Implementation, 3rd edition".
-
Re: Device drivers
Device drivers are tricky. They are not a good place for beginners to
start. Step 1 is to learn about the system either from the book (out on
Dec 21) or by studying the code. There is some documentation on the
DOCUMENTATION page of the Website as well.
An easy first project is to find some program that you like that is not
present in MINIX 3, possibly borrowed from FreeBSD or Linux and port
that. Then another one. Once you feel comfortable with porting programs
and have studied the code, then you could start on a device driver. In
terms of usefulness to other people, the Intel Pro/1000 gigabit
Ethernet card would be a good choice (someone else is doing the
Broadcom). In terms of picking something that is easy as a starter
project, another sound card to plug into our soon-to-avaialble sound
card driver framework might be good.
Andy Tanenbaum
-
Re: Device drivers
ok, sounds good. As far as using MINIX to learn, do you think I should
be looking at version 1 or 2? Or do you think 3 serves this purpose
fine?
-
Re: Device drivers
Eric Haase wrote:
> ok, sounds good. As far as using MINIX to learn, do you think I should
> be looking at version 1 or 2? Or do you think 3 serves this purpose
> fine?
>
Version 1 is like DOS, and version 2 is like Windows 3.1.
Need I say more?
-
Re: Device drivers
Well for simplicity reasons it might be easier to first learn version 1
and then move onto version 2 then 3 so the advanced topics in 3 don't
confuse me at first. But I'm getting the vibe that just starting with 3
I should be all right...
-
Re: Device drivers
Use MINIX 3. It's cleaner, and in many ways simpler. Also, it's much
easier to run common free software such as emacs and vim, because
there's a lot of effort being put into ports.