ULK by Bovet Cessati is the book u should start reading Sankalp On Tue, Mar 17, 2020, 2:44 PM Valdis Klētnieks wrote: > On Tue, 17 Mar 2020 04:37:58 +0530, Sankalp Bhardwaj said: > > > Where to get started?? I am interested in understanding how the > > kernel works but have no prior knowledge... Please help!! > > A good place to start is to realize that the answers often depend on what > the > question is - and there's usually a difference between the question that is > asked, and the question that the person needs the answer for. You probably > want to read this: > > > https://lists.kernelnewbies.org/pipermail/kernelnewbies/2017-April/017765.html > > Something that you'll need is a good understanding of operating system > concepts. Almost all modern computer systems have some idea of basic > concepts > such as processes, files, a directory structure, security and permissions, > scheduling, locking, and so on. And for most of these, there is more than > one > way to accomplish the goal. > > So two books that are useful to read for a compare-and-contrast view are > Bach's > book on the System V kernel, and McKusic's book on the BSD kernel - both go > into details of *why* some things are done they are. It's really helpful > to > see stuff like "We need to lock this inode while we do X, because otherwise > another thread could concurrently do Y, and then Bad Thing Z will happen". > > Of course, a Linux filesystem that does things differently won't have the > same > exact issues, but understanding the *sort* of things that break when you > screw > up your locking is quite the useful info, especially if most of your > coding has > been in userspace where single-threaded is common and libraries did their > own > locking when needed. > > I admit that I also learned a bunch from Tanenbaum's "Modern Operating > Systems", but that was a long long time ago in a galaxy far far away, and I > have no idea what the cool kids are reading instead these days... > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@kernelnewbies.org > https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >