Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I just hope no one laughs at me.
But exactly what are drivers?
Why are they needed?
And why is it that in Windows there are drivers for practically
all hardware but in Linux u don't need drivers for
monitor, processor, mouse, printer etc.?
But why is it that in Linux u often need
drivers for certain modems and other unusual hardware?
Hmm.. let's see.. I've never had to give the definition of a driver before. A driver is kind of like a small program to help the hardware function correctly. Linux does use drivers just like Windows.
The only reason you thought that there are no drivers in Linux, is because it usually installs all of the necessary drivers at installation. The same applies to Windows.
drivers are just programs, which "drives" a specific hardware. They are usually integrated/loaded into the kernel(the core part of the OS, like linux kernel) to handle the hardware on behalf of the kernel.
You see. No one knows how a hardware works(what signals it understands, what can it do, etc.), unless it is compatible with a standard. When it is compatible with a standard(like mouses, monitors, keyboards, etc), then everybody can developes drivers for them. In this case, you don't need a specific driver from the vendor to get it working.
On the other hand, when the hardware doesnt comply to a standard(like those winmodems, graphics boards with advanced features, etc), and the specifications of the hardware are closed, nobody can develope the driver except the designers of the hardware. So you will need to find a driver to make it work.
This is actually same for both Windows and Linux. Since windows has a much bigger market share, hardware vendors tend to develope drivers ONLY for windows and ignore the world of Linux.
I hope this helps you understand better.
Anyway, I myself is still a newbie. If any of the above statements are not quite right, please correct me.
the kernel is the engine
the hardware is the wheels
the driver is the differential
the kernel "runs" and provides a standard interface for everything
the hardware is all wack and proprietary and the kernel can't communicate with the hardware at all.
the "driver" translates the kernels simple spinning into some spinning in a direction the hardware can understand and gets the hardware spinning too.
One of the major reason you don't need as many drivers for Linux as you do for windows is that many of the drivers(and support for various devices) are built right into the kernel, it's part if why it's a monolithic kernel, and windows is a micro kernel.
Originally posted by DeusExLinux One of the major reason you don't need as many drivers for Linux as you do for windows is that many of the drivers(and support for various devices) are built right into the kernel, it's part if why it's a monolithic kernel, and windows is a micro kernel.
At first I thought you said neolithic kernel... I was like, wtf is he talking about? most drivers are built into the kernel itself, so you don't need to download them from the web Drivers that are not built into the kernel are called kernel modules, or simply modules As someone said above, the OS speaks a language your hardware can't always understand so it uses drivers and modules to translate
Note: a normal Linux kernel is below 1.5mb of size... thats awesome compared to the 100mbs of drivers you need for Windows!
hahaha.
This is our new stone age kernel, it's got all the advantages. Combined with the latest technology of stone chipsets, it can outperform the fastest pointy stick.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.