Linux Kernel Programming Book for 3.x versions [closed] - c

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I'm Trying to develop linux kernel module for my own server.
I have a Ubuntu with linux kernel 3.4, but I can't find any books or tutorials for developing modules on 3.x versions, all tutorials and books are for 2.x versions.
And the most part of code not compiling on 3.4 version, specially kernel threads parts.
Do you know anything that would be useful to understand 3.x module development ?
Thanks.

There is not much difference between 2.6.32+ and 3.x in the basics how the kernel works. But yes, function names and APIs change from time to time. This is why books are already old once they are released. This is why I can recommend http://kernelnewbies.org/.
Similar questions have been answered already:
Documentation about device driver programming on kernel 3.x
Linux Device Drivers 3rd Ed and 3.2 kernel
The best documentation is the Linux kernel source itself as it changes so quickly. There are a lot of comments in the code and you should really check out the "Documentation" directory.
Wouldn't it be a good exercise to port the examples to more recent versions?
Very important is a list of changes to keep up with the mainline development: http://kernelnewbies.org/LinuxVersions
If they change the API, they also document the transition. Look at drivers doing similar things to what you want to achieve. How do they work? How did they react on API changes? ...
Subscribe to the related Linux kernel mailing lists and ask there for help for bigger issues from the active kernel developers.

You can use LDD(Linux Device Driver) as reference but it's for 2.x kernel. you can join Eudyptula Challenge challenge for kernel developing learning and training. also remember a very good reference always is linux kernel source code

Related

How to write a text mode gui in Linux? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
When I write scripts/programs, often I would like to pop up a simple text 'gui' to prompt for input:
How would I do this? For example from Shell, Ruby, Golang or C. I don't even know what this is called and Google isn't reponding to "text thingy from scripts".
(The example is from the Debian installer).
Actually, that is not dialog, but the newt library (there are a few differences in appearance). It is used by anaconda on Red Hat systems. The whiptail program uses the library, however it has no real relationship to anaconda.
Anaconda is mostly in Python; it uses the newt shared library (written in C) from a Python binding.
For learning it... documentation is largely non-existent. You have the source code.
Further reading:
screenshots for dialog
newt.git
anaconda.git
Any examples/documentation for python-newt (discussion of newt vs documentation)
Spicing up the Console for Fun and Profit, Part 2
In the past this was known as "Dialog," though as Thomas points out (as the maintainer of Dialog!!) this is no longer the case. This is most likely the Newt library. While you could certainly write something lower level using ncurses, Newt is available in Linux pretty much universally. Dialog can also be installed under Linux. You can read some basic documentation for it here.
Choosing to use this over a curses based approach allows you to focus on what it is you're actually looking to do rather than doing all of the work to build a UI. If, however, you are really looking to build UI elements, ncurses would be the way to go.

Good sources for reading Operating Systems [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I am looking for some good online sources which explain process sychronization,process and threads with practical examples.
i have gone through a lot of theoritical stuff but always face confusion and difficulties when actually trying implement them.
This is a link where you can find the code very useful for thread synchronization.
I started on Tanenbaum's (Wikipedia) "Modern Operating Systems" book then moved on to Linux From Scratch. For practical examples OSDev here and here is a mine of information when you become really hands on. Otherwise, for Windows specifics there are no shortage of books or MSDN literature.
I found Tanenbaum a very entertaining read, he invented the Minix OS which he uses for real world examples. Minix is from around the same era as Linux. Have a look at some of the very early Linux source code release (eg 0.1 or therabouts if you don't want to lose a year of your life studying pure code).
Wikipedia Is Always The Best Online Tutorial Guide. However u can also Check This Link.. If you would like to go with a Pdf Book then u can click Here.. Its really Good Book
this link for NACHOS may be a good help for you. In our undergraduate class we did some good assignments in OS course.

Trimming down freebsd [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I am trying to trim down FreeBSD to understand/learn how things work. I have a few questions if someone can help me with that:
1) when we say kernel, can I separate code wise from the rest of the FreeBSD code? What I mean is, I want to know what all files/dirs come under kernel.
2) I know a book called Linux from scratch. Is there any related book for FreeBSD?
Any pointers are most welcome.
Thank you.
FreeBSD is one cohesive system. Whereas Linux is a kernel plus a bunch of packages, all of FreeBSD core is built together (everything but the ports tree). The FreeBSD Handbook is the best resource to start from for learning FreeBSD. There is also a Developer's handbook that can be found on the FreeBSD website. As for what the kernel is in terms of source files, anything under /usr/src/sys is kernel source code. If you want to know about the workings of the kernel, the book "The Design and Implementation of the FreeBSD Operating System" is the definitive guide to the details of the kernel.

Writing software for E-Book Reader Devices [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Can you please recommend any E-Book Reader which can execute a third-party software, so that anybody can create software for such device?
Well there's two I know of:
The OpenInkPot Linux distribution for e-reader devices, which works on a few e-ink readers (and should be ported to more as time goes on). You shouldn't have much trouble writing third party software for that;
The iRex DR1000. Take a look at this forum thread where someone has created a VMware image for doing development targetted at this e-reader.
The Nook from Barnes and Noble has its system software installed on a removable 2GB micro SD card. Since it runs Android, it should be easy to develop your own software for it.
There's web based e-paper development platform thats offered by Visionect. The devices are nice looking yet rugged and waterproof 6" e-paper tablets and the development documentation is fully available (see docs.visionect.com).

Good SMTP + SSL/TLS Library for C? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
I apologize if this question has been asked before. I did a rather extensive search for similar questions, however all I could find were answers related to C++ or C#. I'm using GNU C.
I'm writing a daemon that needs to be able to send e-mail using SMTP. I need to be able to login to an external mail server, send the email and interpret any error codes. For various reasons, I can not use the system's sendmail facility (if even one is present).
The library should support at least OpenSSL. GNUTLS would be a perk, but not really needed.
Ideally, the library would be licensed LGPL2 (and later) or 3 clause BSD.
Any suggestions?
This answer is more for anyone reading this post after the fact, but it looks like as of version 7.20.0 libcurl supports SMTP, including SSL.
It looks like SASL support is planned, but maybe not released yet. I did find this patch however.
Tim,
Have you looked at CyaSSL? It supports all current industry standards up to TLS 1.2 (as well as some cool features such as stream ciphers), has an OpenSSL compatibility layer, and focuses on optimizing speed and size.
It's dual licensed under both GPLv2 and a commercial license (if you need support). I recently used it with some Android work I was doing and was very pleased.
http://yassl.com/yaSSL/Products_cyassl.html
Regards,
Chris

Resources