I'm faceing the world of oses with minix3.
Lots of questions arises expecially with hardware interfaces.
I'm interested in network card driver development. It seems that I should be able to write a driver reading the datasheet of its chipset... but it tells me which registers to write, not tha mechanics of the operations to do to (for example) initialize the nic or sending a packet.
From here other questions...
It seems that in the case of motherboard's chipsets, there is no need to program the chipset, but rather to know the protocol used by the bus... is this true?
Do you know if there is a book (which speaks about recent technologies and not too much theoric) which could answer to my questions?
One last question is out there some new hardware platform which is simpler than ia32? Maybe arm?
Best regards.
Minix3 network drivers
- thepowersgang
- Member
- Posts: 734
- Joined: Tue Dec 25, 2007 6:03 am
- Libera.chat IRC: thePowersGang
- Location: Perth, Western Australia
- Contact:
Re: VERY NEWBYE question
Ok, depending on the card/chip you are using the specs will vary, but they will nearly always tell you exactly what writing to a register does.
I suggest reading the specs several times and looking at existing implementations (the bochs iodev/ne2k.cc file was a godsend for me) to see how things should be done.
I assume from your first line that you are attempting to create a network card driver for Minix 3 so another place to look would be existing drivers for Minix 3.
I suggest reading the specs several times and looking at existing implementations (the bochs iodev/ne2k.cc file was a godsend for me) to see how things should be done.
I assume from your first line that you are attempting to create a network card driver for Minix 3 so another place to look would be existing drivers for Minix 3.
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc