Showing posts with label linus torvalds. Show all posts
Showing posts with label linus torvalds. Show all posts

Saturday, March 26, 2016

Advanced Linux Programming by Mark Mitchell, Jeffrey Oldham, and Alex Samuel

               
                Ebook Size: 3.7 MB
                Download : Advanced Linux Programming

GNU/Linux has taken the world of computers by storm. At one time, personal computer users were forced to choose among proprietary operating environments and applications. Users had no way of fixing or improving these programs, could not look “under the hood,” and were often forced to accept restrictive licenses. GNU/Linux and other open source systems have changed that—now PC users, administrators, and developers can choose a free operating environment complete with tools, applications, and full source code.

A great deal of the success of GNU/Linux is owed to its open source nature. Because the source code for programs is publicly available, everyone can take part in development, whether by fixing a small bug or by developing and distributing a complete major application.This opportunity has enticed thousands of capable developers worldwide to contribute new components and improvements to GNU/Linux, to the point that modern GNU/Linux systems rival the features of any proprietary system, and distributions include thousands of programs and applications spanning many CD-ROMs or DVDs.

The success of GNU/Linux has also validated much of the UNIX philosophy. Many of the application programming interfaces (APIs) introduced in AT&T and BSD UNIX variants survive in Linux and form the foundation on which programs are built.The UNIX philosophy of many small command line-oriented programs working together is the organizational principle that makes GNU/Linux so powerful. Even when these programs are wrapped in easy-to-use graphical user interfaces, the underlying commands are still available for power users and automated scripts. A powerful GNU/Linux application harnesses the power of these APIs and commands in its inner workings. GNU/Linux’s APIs provide access to sophisticated features such as interprocess communication, multithreading, and high-performance networking. And many problems can be solved simply by assembling existing commands and programs using simple scripts.

This book is intended for three types of readers:

You might be a developer already experienced with programming for the GNU/Linux system, and you want to learn about some of its advanced features and capabilities.You might be interested in writing more sophisticated programs with features such as multiprocessing, multithreading, interprocess communication, and interaction with hardware devices.You might want to improve your programs by making them run faster, more reliably, and more securely, or by designing them to interact better with the rest of the GNU/Linux system.

1. GNU is a recursive acronym: It stands for “GNU’s Not UNIX.”

You might be a developer experienced with another UNIX-like system who’s interested in developing GNU/Linux software, too.You might already be familiar with standard APIs such as those in the POSIX specification.To develop GNU/Linux software, you need to know the peculiarities of the system, its limitations, additional capabilities, and conventions. You might be a developer making the transition from a non-UNIX environment, such as Microsoft’s Win32 platform.You might already be familiar with the general principles of writing good software, but you need to know the specific techniques that GNU/Linux programs use to interact with the system and with each other. And you want to make sure your programs fit naturally into the GNU/Linux system and behave as users expect them to.

You might be a developer experienced with another UNIX-like system who’s interested in developing GNU/Linux software, too.You might already be familiar with standard APIs such as those in the POSIX specification.To develop GNU/Linux software, you need to know the peculiarities of the system, its limitations, additional capabilities, and conventions. You might be a developer making the transition from a non-UNIX environment, such as Microsoft’s Win32 platform.You might already be familiar with the general principles of writing good software, but you need to know the specific techniques that GNU/Linux programs use to interact with the system and with each other. And you want to make sure your programs fit naturally into the GNU/Linux system and behave as users expect them to.

Monday, July 29, 2013

Ubuntu Pocket Guide and Reference - Keir Thomas


                      Ebook Size : 2.1 MB

                  Download : Ubuntu Pocket Guide and Reference

Ubuntu is a version of the Linux operating system. An operating system is the software that “runs your computer”. Microsoft Windows is the world’s most popular operating system, at least for desktop computers, but Linux is a completely separate endeavor.

The ball started rolling back in the 1980s, when a hugely talented computer scientist called Richard Stallman decided to create a clone of a venerable operating system called Unix. At the time, Unix ran many of the world’s industrial and academic computer systems. Stallman did this because Unix was becoming increasingly proprietary—it was no longer permitted to share its source code (the listings created by programmers), as had happened since the inception of Unix in 1969. This was anathema to Stallman, who believed sharing software was natural and healthy. He decided his version of Unix would always be freely available, and invented the legal and ethical concept of Free Software to ensure this happened.

Put simply, Free Software says users should always have the freedom to share software, without restrictions. On a technical level, Free Software guarantees the right to view and also modify source code, or even use it as a basis to make a new program. However, any additions or changes must be released as Free Software too, so others can continue to benefit.

Stallman called his version of Unix “GNU” (pronounced G-noo). This is a recursive acronym, standing for GNU’s Not Unix. In other words, the acronym refers to itself—a joke of a type favored by programmers.

GNU grew into a major project with many contributors. However, good as it was, it lacked a kernel. A kernel is the program at the heart of any operating system that takes care of fundamental stuff, like letting hardware communicate with software. Almost by accident, a chap called Linus Torvalds provided a solution. In 1991 he started a personal project to create a kernel.

Due to a naming error when his kernel was uploaded to the Internet, it got named after him and became known as Linux—a hybrid of “Linus” and “Unix”. Crucially, Torvalds chose to release his kernel as Free Software, and invited any interested party to give him a hand. They did. Thousands of people around the world got involved. As the years went by, the project became more and more important, and grander in its design and outlook. Today, the Linux kernel receives sponsorship from many major corporations, including IBM.

NOTE :  Linus Torvalds continues to oversee and contribute to the Linux  kernel  project  to  this  day.  He  humorously  describes  his  role  as  a  “benign dictator”.

Because the kernel is such an important aspect of an operating system, people began to refer to the combination of GNU and Linux simply as Linux. This upset Stallman, who asked that the name GNU/Linux be used instead. But it was too late. The name stuck.

Software from other sources is typically included in the Linux operating system too, alongside GNU and the Linux kernel. Virtually all the software in Linux is Free Software, even though much of it has no direct ties with GNU or Richard Stallman. Arguably, Stallman’s greatest gift to the world was not the GNU software, but the concept of Free Software. Much of Stallman’s activity nowadays involves evangelizing around the world about Free Software.

Put simply, Ubuntu just works. Unlike with Windows, you don’t have to
fiddle around with driver CDs after installation—support for all types of
hardware is built into the central kernel program.

Three things make Ubuntu stand out from the crowd:

1. Its focus on desktop users;

2. The Ubuntu philosophy and community;

3. Ease of use.

Tuesday, February 5, 2013

Fast Track to LINUX - Digit Magazine


                       Ebook Size : 2.3 MB

                   Download : LINUX.pdf 

From servers to ipods, hardcore programmers to enthusiasts, all inclusive 6GM installation to floppy bootable, Linux is everywhere. Linux is standing today showing the IT world the innovation that can be achieved by sheer community work. And, Linux is free too. It appears, there is after all something like a free
lunch! When the world around you is trying Linux, why would you want to be leaving behind the excitement?

Considering the geek value and the almost cult status of Linux today, you would think it has been around for eons (at least in IT time!). Actually, Linux was officially introduced only in 1991 by its famed creator Linus Torvalds, who at the time was a student at the University of Helsinki in Finland. Little did he know that his creation would grow in size and popularity to the extent it has today. That he did not expect too much to come forth from his work is evident from this much-too-famous excerpt of his mail to a newsgroup: 

 “Hello everybody out there using minix - I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones. This has been brewing since April, and is starting to get ready. I’d like any feedback on things people like/dislike in minix, as my OS resembles it somewhat(same physical layout of the file-system (due to practical reasons) among other things).”

He ended his mail saying:

“PS. Yes — it’s free of any minix code, and it has a multi-threaded fs. It
is NOT portable (uses 386 task switching etc), and it probably never will
support anything other than AT-harddisks, as that’s all I have :-(.”

Let’s look at some of the interesting things that happened before and after that mail. The story of operating systems—especially that of open source OSes—is inspiring to anyone who loves technology. Linux will only be wholly appreciated when the “behind the scenes” of its development is known.

The twists and turns that have shaped Linux warrant a separate book, but here we present what we think are the key points in the evolution of Linux. OK, so you already know Linux is an OS—that’s a good starting point. Operating systems are almost as old as computers themselves. You see, one can’t quite live without the other.

Simply put, the OS is like the engine for a car: it is what makes everything else run.