I’m learning kernel development rn and I enjoyed this a lot. Excited for the next post. Thanks mate
@ellenorbjornsdottir1166 Жыл бұрын
Real OSDev is very difficult. I remain unix scrub. Props mate.
@adventuresin9 Жыл бұрын
Making an OS from scratch would be a lot of work. Doing drivers for an existing OS isn't that hard.
@superangrybrit Жыл бұрын
good video! 👍
@tc40390 Жыл бұрын
Hey welcome back! :) I was just wondering, do you have any book or courses recommendations for this kind of low level programming? I mean I know C reasonably well but I have never delved in to the hardware side of things. I've only done CLI tools and GTK stuff pretty much.
@adventuresin9 Жыл бұрын
The irony is, low level programming largely requires low level programming. What I mean is that it only takes fundamental programming concepts to get things done. Understanding loops, and pointers, how many bytes a data type takes up, and how many they take up placed in a struct. When operating in kernel space, you can also set a pointer to a specific memory address. Turning stuff on is largely a matter of knowing what memory address to set to "1", and that sort of thing is in manuals in datasheets for that hardware.
@tc40390 Жыл бұрын
@@adventuresin9 I've read some code from 9front base and code that you've actually written and I agree that most of the code seem to utilize like the most basic concepts of C (Simple = good). What I'm looking for is basically to learn about getting in to the mindset and how one should go about doing this kind of programming if that makes sense. Troubleshooting and things like that. Perhaps I should just buy some ancient hardware and look for datasheets and make it work I guess. Sorry for rambling :)
@adventuresin9 Жыл бұрын
If you want to follow along with what I'm doing, on the "ancient" end, I have a MediaTek MT7688. I'm also starting to work with the newer Rockchip RK3399. A lot of it is learn by doing. It is applying basic programming concepts to what a given manual or datasheet says a piece of hardware wants. There is a lot of thinking in terms of bitwise operations on unsigned 32bit integers. 9 Front also has a few older 32 bit Arm kernels you can look at to get an idea of how these things are done.
@tc40390 Жыл бұрын
@@adventuresin9 "Ancient" is probably not the right word here, no offense intended of course, you'll have to excuse my poor English. But thank you so much, I'll look in to it.
@adventuresin9 Жыл бұрын
No offense taken. Computer technology moves fast. 10 years old is pretty much ancient. But ancient stuff is often still useful. My MT7688 project is just aimed at reading sensors and transmitting text around, which it is very capable of.
@ellenorbjornsdottir1166 Жыл бұрын
*turns off your clock*
@adventuresin9 Жыл бұрын
Which clock?
@baxiry. Жыл бұрын
@@adventuresin9 To make the video longer
@adventuresin9 Жыл бұрын
I'll get another video up soon as I get more stuff done on this board.