Linked by Thom Holwerda on Mon 6th Aug 2012 21:50 UTC, submitted by iseyler
Permalink for comment 530200
To read all comments associated with this story, please click here.
To read all comments associated with this story, please click here.
Features
Linked by Thom Holwerda on 06/13/13 14:35 UTC
Linked by Thom Holwerda on 06/11/13 17:07 UTC
Linked by Thom Holwerda on 06/10/13 23:13 UTC
Linked by Thom Holwerda on 06/08/13 14:57 UTC
Linked by Thom Holwerda on 06/07/13 11:40 UTC
Linked by Thom Holwerda on 06/04/13 12:45 UTC
Linked by nfeske on 05/31/13 10:12 UTC
Linked by Thom Holwerda on 05/29/13 16:59 UTC
Linked by Thom Holwerda on 05/24/13 17:26 UTC
Linked by Thom Holwerda on 05/21/13 21:38 UTC
More Features »
Sponsored Links



Member since:
2005-07-08
Quite simply the fact that asm isn't a must. We'll take the first item on your list as an example -- drivers. I invite you to join any of the numerous mailing lists used for Linux driver development.
Ask people who actually write drivers if they agree that asm is a must and you will get a resounding no. "
Well, back on my long gone university days. Every CS student had to do driver projects in multiple operating systems. So I guess I do have some experience with drivers. On those days Linux was still being brewed.
Linux is not the only kernel in town, and not all provide C API abstractions to access the hardware.
There three ways to access hardware:
- Memory mapped I/O
- Processor instructions to talk via I/O ports
- Processor instructions to talk via traps (not so common)
Specific hardware sometimes requires initialization steps not covered by the way the kernel abstracts the above forms of I/O communication.
Sure, it may be that he never needed, but if he is writing drivers, for sure he will eventually need to get either touch Assembly or have someone else do it.
Linux kernel version 3.4.7 driver tree has
- 8 Assembly files;
- 58 C files making use of inline Assembly;
If you care, I can also list use cases for every single point I've listed on my previous comment.