5 ms·
I think it's worth spending a while with user-level C (maybe complete 1 or 2 nontrivial projects) before attempting to write kernel modules.
by pconner 12y ago
I think it's worth spending a while with user-level C (maybe complete 1 or 2 nontrivial projects) before attempting to write kernel modules.
- gchp 12y agoOk, what would you consider a nontrivial project?
- Alupis 12y agoHe may possibly be referring to just getting familiar with C, since there is a lot of stuff you must worry about with C that you may not be used to with higher level languages (such as having to manually manage your memory allocates, etc).
- dllthomas 12y agoI interpret gchp as asking for suggestions as to projects of the appropriate scope.
- caw 12y agoMy first C class had Gameboy programming. There were no libraries to include, and most of the data manipulation was around scores and drawing pixels. My second C class went into mutexes and things (producers & consumers of some data) My third class that used C had kernel modules. Our kernel module project was to write a model of a parking lot. There was some user code that called our module saying whether it was a normal vehicle, a handicap vehicle, or an emergency vehicle. The parking lot also had 2 states, emergency or normal. In an emergency, only emergency vehicles could come in, everything else was rejected. The code ran with M floors and N parking spaces per floor, and returned the lowest floor in which you could park. We also wrote an identical piece of userspace code, and compared how fast each performed.
- pconner 12y agoMy C education followed the exact same pattern (Georgia Tech). I'm really happy with it. The whole progression felt very organic.