LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   General (https://www.linuxquestions.org/questions/general-10/)
-   -   A question about the difference between Linux and Windows Kernels (https://www.linuxquestions.org/questions/general-10/a-question-about-the-difference-between-linux-and-windows-kernels-167451/)

ludwig W 04-07-2004 05:00 PM

A question about the difference between Linux and Windows Kernels
 
HI,

I've been using Linux for some time and am no where near an expert. However, there is a question I've been meaning to ask for quite some time.

Using Linux , you get to know that the Linux kernel is modular i.e. modules are only loaded into the kernel when needed. My question is: Is this how Windows works too, or is it the case that everything is loaded into Windows from the boot?

Also, another question that is related to this (I think) is again concerning the difference between the two systems: In windows, if you don't have a driver for a new piece of hardware, you just install it. It's quite easy. However, in Linux, if the kernel wasn't compiled with support for the hardware in question, then as far as I can see, there is no way to get the hardware working unless you recompile the kernel. Isn't this a massive drawback of the Linux system? In short, how does Windows allow you to install new drivers without having to recompile the kernel?


Sorry if these questions seem dumb, it's just that they have been bothering me for some time.

Thanks

Ludwig

trickykid 04-07-2004 05:12 PM

Asking how the Windows kernel works, well.. probably no one really knows except the developers in which I'm sure they have NDA to not discuss or share this information since the software and code is proprietary.

On a side note, this is being moved as its more suitable in General..

acid_kewpie 04-07-2004 05:14 PM

well you pretty much answered yourself there... the windows kernel acts in a modular way because you install your soundcard modules and network modules seperately and they then get loaded... very similar really. the Win32 kernel is not a microkernel though, like Gnu/Hurd is, some is in it, some is outside of it.

as for the compatability issue.. well that's basically the start of another very tired debate. you ever wondered why say... via have a version of their drivers for 95/98/me and one for 2k/xp ? pretty similar reasons, it;s just that the flexibilty to think those issues might occur in the first place are not present in windows. stick with a standard distro and you'll get a rebuilt RPM that you should be able to install just as easy as in windows.

qwijibow 04-07-2004 05:17 PM

Okay... in linux, you can load, and unload Drivers (kernel modules) as you see fit.
in windows you cannot. it is done dureing boot time, which is why in windows you need to re-boot if you make a change to a driver / hardware, or install a new driver.

as for the part about the drawback in the linux system.. NO
it is exactly the same in windows !!!!

the thing is... there are many many many many different linux kernel versoions in use out there. each distro uses different compile options, new kernel versions come out every 5 minutes. some users compile there own kernels.

so its practically impossible to make a driver for every possible kernel, which is why unless you have a very common kernel. (e.g. redhat 9 default) you need to compile yourself.

in ms windows, there are far fewer kernels...
to my knoledge there are 3.

windows 9x/ME
Windows NT/2k
Windows XP

which is why when u download a driver from the internet under windows, you have to select windows 9x/ME windows NT/2k or windows XP

it is not a draw back of the linux kernel, its just a side effect of having such regular upgrades available.... which i think is a good thing. and well worth the extra few minutes in installing drivers.

trickykid 04-07-2004 05:17 PM

Quote:

Originally posted by acid_kewpie
well you pretty much answered yourself there... the windows kernel acts in a modular way because you install your soundcard modules and network modules seperately and they then get loaded... very similar really. the Win32 kernel is not a microkernel though, like Gnu/Hurd is, some is in it, some is outside of it.

as for the compatability issue.. well that's basically the start of another very tired debate. you ever wondered why say... via have a version of their drivers for 95/98/me and one for 2k/xp ? pretty similar reasons, it;s just that the flexibilty to think those issues might occur in the first place are not present in windows. stick with a standard distro and you'll get a rebuilt RPM that you should be able to install just as easy as in windows.

Maybe that's why you have to reboot after installing most drivers though, its smart enough to auto compile the kernel.. :p

Pauli 04-07-2004 05:18 PM

Hmm. None of you looked at the leaked source code?

qwijibow 04-07-2004 05:19 PM

i cant be bothered to look for it....
and there are so many false files drifting around p2p.

what, tell us what you have leanred by reading the source ?

Pauli 04-07-2004 05:24 PM

Dude, I have a 56k at best. Think I can be downloading 700 mg files? Hell, it takes me an hour to get a 5 mb file. At school I could try, but it would take hours upon hours of searching. I wish someone would host it, but that would cost a fortune :(

trickykid 04-07-2004 05:27 PM

Let me remind everyone if you did see the source code or obtained it, do not post it here or the such. We don't associate in such matters as its against our rules.

Pauli 04-07-2004 05:33 PM

Would be a hellova post considering it is 700 mb tricky.

Besides, I think the MAIN diffy between the linux and windows kernels is the fact that linux users KNOW that a kernel exists, if not what it does. The average windows user has no clue what a kernel is, and doesnt even know his OS has one.

frandalla 04-07-2004 05:34 PM

Hey ludwig W... You don't need to recompile your kernel for each driver you want to be loaded. What you need is the source code of your actual kernel 'cause then the driver module can be compiled against your kernel. Not the whole kernel itself gets compiled. Only if you want it to be a kernel built-in feature, 'cause then you'll need to patch your kernel source and recompile it. Problem most of drivers come within the kernel tree, so it's preferable to have it as a native kernel moduleor built-in feature then to download a third party module... (although it IS better to use the nVidia's module then the kernel module for nvidia gfx boards). Think this might clarify the matter :)

trickykid 04-07-2004 05:36 PM

Quote:

Originally posted by Pauli
Besides, I think the MAIN diffy between the linux and windows kernels is the fact that linux users KNOW that a kernel exists, if not what it does. The average windows user has no clue what a kernel is, and doesnt even know his OS has one.
Most I know from doing monkey tech support for several years think they are running Internet Explorer 6.0 or OfficeXP... they can't simply tell you what OS it is, even when they see the logo each time it boots up every day... :p

ludwig W 04-07-2004 05:41 PM

thanks frandalla...that does clarify things somewhat.

witeshark 04-07-2004 05:54 PM

As to looking at leaked code, :twocents: why bother? There would never be any way to confirm it's authenticity short of compiling and test running a whole version, no? So why bother? ;)

frandalla 04-07-2004 06:07 PM

ludwig W: And looking at signature, I see kernel 20.4-8.... your kernel probably is 2.4.20.4-8
you should type uname -r to get your kernel's version
if you type uname -a you'll get a whole lot of information about your system build...
man uname for more info...


All times are GMT -5. The time now is 02:03 AM.