What are the advantages of Linux and a monolithic kernel?

oLLie

Diamond Member
Jan 15, 2001
5,203
1
0
Hello Operating Systems Forum,

Can you guys list some of the reasons why someone would want to choose Linux over Windows or something else? Maybe just list a few reasons why you use Linux. Thanks,

Ollie
 

Praetor

Diamond Member
Oct 14, 1999
4,498
4
81
1) it's fricking cool. :p
2) It's not all point and clicky, I spend a lot of time at a prompt compiling programs
3) It's free.
4) Most every program written for linux is free.
5) It's fricking cool.
6) It's fun to laugh at non-geeks when they sit at my linux box.
7) Did I mention that it's fricking cool and that it's free? :p
 

dawks

Diamond Member
Oct 9, 1999
5,071
2
81
For the first two replies, I think hes looking for more technical reasons. he knows its free.

I am also interested in more technical details.
 

eigen

Diamond Member
Nov 19, 2003
4,000
1
0
You can encrypt your whole hardrive( I meanwhole root included), which I find very cool.
 

oLLie

Diamond Member
Jan 15, 2001
5,203
1
0
I'm interested in making a Linux box, and all I remember from an operating systems class is that Linux has a monolithic kernel (or was that Unix)? Anyway, that now seems to be a bit of misinformation according to some of the replies here. Windows does pretty much everything that I want from an OS, but I'm still interested in what Linux offers. Interestingly, I always hear Linux people talking about Windows being bloaty, and I would tend to agree, but I've seen a few distro's weighing in at over 1 GB themselves. I suppose the difference is that if you wanted to, you could cut out all the bloat from there. Anyway, thanks for the replies everyone.


n0cmonkey, what is HURD and MACH?

Ollie
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: oLLie
I'm interested in making a Linux box, and all I remember from an operating systems class is that Linux has a monolithic kernel (or was that Unix)?

Linux is a monolithic kernel. It's fairly modular though.

Anyway, that now seems to be a bit of misinformation according to some of the replies here. Windows does pretty much everything that I want from an OS, but I'm still interested in what Linux offers. Interestingly, I always hear Linux people talking about Windows being bloaty, and I would tend to agree, but I've seen a few distro's weighing in at over 1 GB themselves. I suppose the difference is that if you wanted to, you could cut out all the bloat from there. Anyway, thanks for the replies everyone.

The more ram the better. Some of the various software projects out there require more ram than others. Gnome and KDE are pretty big.


n0cmonkey, what is HURD and MACH?

They're kernels. HURD is the ongoing project by the GNU guys to get a kernel. It's beein going on for a long long time, and doesn't do a whole lot. I think (not positive) that it is a microkernel.

MACH is a project that started at CMU. It's a microkernel (atleast at some version). Mac OS X runs a v3(4?) MACH kernel.
 

Bremen

Senior member
Mar 22, 2001
658
0
0
1. its free (speech)
2. its free (beer)

1 is much more important than 2 imho although without 2 I might not have bothered in the first place. Anyway, running linux I can do whatever I like. Granted I'm not an uber programmer so writing a device driver is beyond me, however if I wanted to invest the time I could do whatever I like with it. With windows you're stuck only doing what microsoft will let you do with it. You mentioned how with linux some distros come in at over 1GB. Well consider that includes alot of redundant software, like multiple ftp servers, mail clients, even multiple browsers. There is choice, and most importantly you can choose not to install any of it. Try telling windows not to install IE...
 

MrChad

Lifer
Aug 22, 2001
13,507
3
81
Although I'm sure there are many people here who will argue the benefits of Linux for a desktop environment, to me the real benefit comes in the server realm.

Enterprise servers already have high upfront hardware costs, but Microsoft software costs can be as much (and often more) than the hardware itself. Linux provides a viable, inexpensive alternative to Microsoft server software. Since it's open source, it tends to be updated more frequently and reliably when bugs and/or security holes are found than Microsoft software. Its command-line interface is script-friendly, making administration easier. And since the underlying server software is usually transparent to the end user (sharing files, hosting web sites, etc.), you can integrate Linux boxes into your Windows-based network fairly seamlessly.

As a desktop OS, I haven't found any of Linux's window managers (KDE, GNOME, etc.) to be as refined and user-friendly as Windows or Macintosh desktops. Plus, although there are many open source alternatives out there, there is still a lot more consumer software for Windows than for other platforms.

Well, my two cents. (awaits Nothinman to tear my response apart ;))
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: MrChad
As a desktop OS, I haven't found any of Linux's window managers (KDE, GNOME, etc.) to be as refined and user-friendly as Windows or Macintosh desktops. Plus, although there are many open source alternatives out there, there is still a lot more consumer software for Windows than for other platforms.

Well, my two cents. (awaits Nothinman to tear my response apart ;))

KDE and Gnome are Desktop Environments. ;)

Take a look at XFCE sometime. I've been using it for a little over a week. It's much more lightweight than KDE and Gnome, but still very powerful. I'm liking it so far, and I'm a hardcore blackbox user. ;)
 

MrChad

Lifer
Aug 22, 2001
13,507
3
81
Originally posted by: n0cmonkey
Originally posted by: MrChad
As a desktop OS, I haven't found any of Linux's window managers (KDE, GNOME, etc.) to be as refined and user-friendly as Windows or Macintosh desktops. Plus, although there are many open source alternatives out there, there is still a lot more consumer software for Windows than for other platforms.

Well, my two cents. (awaits Nothinman to tear my response apart ;))

KDE and Gnome are Desktop Environments. ;)

Take a look at XFCE sometime. I've been using it for a little over a week. It's much more lightweight than KDE and Gnome, but still very powerful. I'm liking it so far, and I'm a hardcore blackbox user. ;)

Oh, right, XFree86 is the window manager, right?
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: MrChad
Originally posted by: n0cmonkey
Originally posted by: MrChad
As a desktop OS, I haven't found any of Linux's window managers (KDE, GNOME, etc.) to be as refined and user-friendly as Windows or Macintosh desktops. Plus, although there are many open source alternatives out there, there is still a lot more consumer software for Windows than for other platforms.

Well, my two cents. (awaits Nothinman to tear my response apart ;))

KDE and Gnome are Desktop Environments. ;)

Take a look at XFCE sometime. I've been using it for a little over a week. It's much more lightweight than KDE and Gnome, but still very powerful. I'm liking it so far, and I'm a hardcore blackbox user. ;)

Oh, right, XFree86 is the window manager, right?

No. It's complicated.

I think X is the protocol in general.
X11R6.7 is the specification.
XFree86 is the implimentation of the specification.
Window managers run on X to manage windows. metacity(?), sawfish, *box, icewm, etc are window managers.
KDE, Gnome, and maybe XFCE (not sure) are Desktop Environments. They do a whole lot more than the basic Window Managers. They generally include a Window Manager to do some of the simple stuff (metacity/sawfish and kwm?).

That's probably a horrible description. Someone else can clean it up. :p
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
I'm interested in making a Linux box, and all I remember from an operating systems class is that Linux has a monolithic kernel (or was that Unix)? Anyway, that now seems to be a bit of misinformation according to some of the replies here

The Linux kernel is monolithic, but so is Windows (pretty much). But Linux has a notion of modules, which are kernel code that can be added and removed (usually) at runtime, like drivers in Windows only with more control.

As a desktop OS, I haven't found any of Linux's window managers (KDE, GNOME, etc.) to be as refined and user-friendly as Windows or Macintosh desktops. Plus, although there are many open source alternatives out there, there is still a lot more consumer software for Windows than for other platforms.

After using Linux and a good WM/DE for awhile you tend to find Windows much more annoying and limiting than anything Linux/unix has to offer. The only 'good' multiple desktop manager that I've seen is nView and even it's not as good as Enlightenment which was written in like 1998. Every time I have to do something on a Windows box I just end up cursing and complaining because there's so many things that I can easily do on Linux that are atleast a huge PITA to setup on Windows. Little things like find, lsof, lspci, kill, time, df, gkrellm not being available and big things like installing software are all much more difficult than they should be on Windows. The only thing I think Windows has over Linux is the filemanager, I still find Explorer to be better than most anything out there, hopefully the new nautilus will be better but I'm not getting my hopes up.

Commercial, consumer software is overrated and most of it is crap IMO and there are just as good or better free alternatives on Linux.

Oh, right, XFree86 is the window manager, right?

No, XFree86 is the X Server, it talks to the hardware and provides the 'canvas' for X clients to draw on. Gnome and KDE are desktop environments because they contain a window manager, a file manager, a desktop, a task bar etc. A window manager is just the portion that managed windows, draws borders around them, lets you move them around, shade them, have multiple desktops (not desktops in the notion of putting files/shortcuts on the desktop though heh), etc.
 

Sunner

Elite Member
Oct 9, 1999
11,641
0
76
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.
 

Sunner

Elite Member
Oct 9, 1999
11,641
0
76
Originally posted by: n0cmonkey
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.

Trouble is the fun part.
It's like a good game of Civilization, the fun part is when things aren't going your way, what's the fun in stuff that just works? :)
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: Sunner
Originally posted by: n0cmonkey
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.

Trouble is the fun part.
It's like a good game of Civilization, the fun part is when things aren't going your way, what's the fun in stuff that just works? :)

I just hated using HP-UX. It was just so... so... blah. :p

And I don't get the gaming reference. Things always go my way. :shocked:
 

Sunner

Elite Member
Oct 9, 1999
11,641
0
76
Originally posted by: n0cmonkey
Originally posted by: Sunner
Originally posted by: n0cmonkey
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.

Trouble is the fun part.
It's like a good game of Civilization, the fun part is when things aren't going your way, what's the fun in stuff that just works? :)

I just hated using HP-UX. It was just so... so... blah. :p

And I don't get the gaming reference. Things always go my way. :shocked:

If things always go your way, you're not a true techie ;)

Or if you were referring to Civ, you're just a bigtime Civ nerd, or you play on the lowest difficulty level, in which case you're a wimp ;)
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: Sunner
Originally posted by: n0cmonkey
Originally posted by: Sunner
Originally posted by: n0cmonkey
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.

Trouble is the fun part.
It's like a good game of Civilization, the fun part is when things aren't going your way, what's the fun in stuff that just works? :)

I just hated using HP-UX. It was just so... so... blah. :p

And I don't get the gaming reference. Things always go my way. :shocked:

If things always go your way, you're not a true techie ;)

Or if you were referring to Civ, you're just a bigtime Civ nerd, or you play on the lowest difficulty level, in which case you're a wimp ;)

Things never go my way, and I avoid civ with a passion. I stick to dopewars, or my latest attempt at gaming: lincity.
 

Barnaby W. Füi

Elite Member
Aug 14, 2001
12,343
0
0
http://www.cbbrowne.com/info/microkernel.html

(btw, check out what's mentioned there about exokernels - very cool concept!)

http://www.pdos.lcs.mit.edu/papers/exo-sosp97/exo-sosp97.html

7.2 XCP: a ``zero-touch'' file copying program

XCP is an efficient file copy program. It exploits the low-level disk interface by removing artificial ordering constraints, by improving disk scheduling through large schedules, by eliminating data touching by the CPU, and by performing all disk operations asynchronously.

Given a list of files, XCP works as follows. First, it enumerates and sorts the disk blocks of all files and issues large, asynchronous disk reads using this schedule. (If multiple instances of XCP run concurrently, the disk driver will merge the schedules.) Second, it creates new files of the correct size, overlapping inode and disk block allocation with the disk reads. Finally, as the disk reads complete, it constructs large writes to the new disk blocks using the buffer cache entries. This strategy eliminates all copies; the file is DMAed into and out of the buffer cache by the disk controller--the CPU never touches the data.

XCP is a factor of three faster than the copy program (CP) on Xok/ExOS that uses UNIX interfaces, irrespective of whether all files are in core (because XCP does not touch the data) or on disk (because XCP issues disk schedules with a minimum number of seeks and the largest contiguous ranges of disk blocks).

The fact that the file system is an application library allows us both to have integration when appropriate and to craft new abstractions as needed. This latter ability is especially profitable for the disk both because of the high cost of disk operations and because of the demonstrated reluctance of operating systems vendors to provide useful, simple improvements to their interfaces (e.g., prefetching, asynchronous reads and writes, fine-grained disk restructuring and ``sync'' operations).
 

Megatomic

Lifer
Nov 9, 2000
20,127
6
81
Originally posted by: n0cmonkey
Originally posted by: Sunner
QNX is AFAIK the only truely successful microkernel implementation.

As for why I use Linux...
It's a tool I feel very comfortable with, I find it easy to work with, and when I screw something up, it's generally easy to fix(unless I REALLY screw something up;)).
It's free, both as in beer and speech.
Finding the tools I need for work is very easy.

Of course I like just about anything *NIX, Linux, BSD, Solaris, I just wish I could get my hands on an AIX box and a HP-UX box to play with as well :)

Asking for trouble there... ;)

I'd like a deccent SGI box to help me get over my phobia of IRIX.
I use HP-UX 11.11 on 8 HP B2600s every day at work and I detest the experience. Sunner, if I could give you the HP boxes I would. :)