[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Drawbacks von Linux (war: OT:::Re: Mal was Lustiges)



On Wed, Apr 16, 2003 at 06:16:57PM +0100, Martin Röhricht wrote:

> Allerdings möchte ich eine Anmerkung noch loswerden.
> Ich denke, dass ab Win2000 und nun mit WinXP deutlich stärkere 
> Betriebssysteme erschienen sind.

Also mit w2k auf jeden Fall... XP wuerde ich wegen der allseits bekannten
"Nachteile" nicht so ganz in diese Reihe stellen. Zu bunt, zu gespraechig,
zu "unfrei"... 

> Alleine die Möglichkeiten des NTFS 
> Dateisystems sind sehr weitreichend. MS-DOS Altlasten wie fehlendes 
> Multitasking oder Multithreading sind mittlerweile ausgemerzt.

Naja, NTFS selber kann mehr als das darueberliegende win32... 
Aber das Multitasking unter Windows ist immer noch sehr
verbesserungswuerdig, imho... 

> Warum ich Windows so gut wie nie nutze (immoment ja gerade wieder ;-) ) 
> ist nicht, dass ich es für das schlechtere System halte, sondern viele 
> andere Gründe, wie fehlender OpenSource, Registrierungszwang, kein guter 
> Einblick in tiefere Sphären des Systems, den Applikationen drumherum, 
> fehlende bash, und vieles vieles mehr.

Ich fuehle mich durch Windows einfach derart gegaengelt, dass mir das System
eine besitmmte Arbeitsweise aufzuzwingen versucht, die nunmal diametral zu
meiner eigenen Arbeitsweise steht. 

> Mich würde indes wirklich eine konstruktive Diskussion interessieren, in 
> der man die Stärken und Schwächen von Windows gegenüber Linux vom rein 
> technischen Teil her besprechen würde.

Naja, auf die technischen Gegebenheiten gehe ich nun mal nicht ein... 

> Vielleicht würde das ja auch jemanden interessieren. Also eine 
> Diskussion, in der es nicht darum geht, dass MS seine Sourcen nicht 
> offenlegt oder zuviel Geld kostet, sondern ob NTFS besser ist als 
> ext3/xfs/reiserfs/... oder wo die Speicherverwaltung effektiver ist, etc.

Ich halte folgendes an "Linux" fuer verbesserungswuerdig:

- Kernel: viel zu gross, zu ueberladen, "zu monolithisch". 
Wenn man sich einmal die Groesse des Kernels und die Kompilierungszeiten
anschaut, dann wird einem irgendwie klar, dass das so nicht mehr lange
weiter gehen kann. Auf meinem PII-350 hab ich mit Kernel 2.0.36 angefangen,
der innerhalb weniger Minuten komplett durchkompiliert war und nur einen
Bruchteil des heutigen Platzes beanspruchte. 
Heutzutage sind die gepackten Kernelsourcen auf ueber 30 MB angewachsen,
meine Hardware ist aber im Grunde die gleiche geblieben. Ein Kernelcompile
von 2.4.20-xfs dauert inkl. Module fast eine komplette Stunde. 
Wenn ich nun 3 mal so viel Hardware wie damals drin haette, wuerde ich ja
nix sagen, aber das ist nunmal nicht der Fall, aber bei jedem neuen
Kernelrelease dauert es immer laenger, bis ein Kernel fertig ist. 
Und das nicht nur beim Kompilieren, sondern auch beim Release. 2.4.21 ist ja
eigentlich mehr als ueberfaellig, so dass ich mir die Frage stelle, wieso es
so lange dauert? 
Wenn man jeden popeligen Treiber in den Maintree vom Kernel packt, obwohl
man das meiste Zeugs eigentlich gar nicht braucht, wundert mich das nicht,
dass 2.4.21 noch nicht released wurde. Zuviel muss unter einem Hut gebracht
werden. 
Ausserdem werden "alle Nase lang" irgendwelche Dinge geaendert. Bei 2.0
hatte man ipfw oder so, bei 2.2 ipchains und bei 2.4 nun iptables. Gut, die
Funktionalitaet ist auch gestiegen, aber wieso muss man staendig alles
komplett ueber den Haufen schmeissen, statt sich einmal *richtige* Gedanken
ueber eine API zu machen, die dann auch lange Zeit bestand haben und
erweitert werden kann? So koennte man dann auch etliches aus der
eigentlichen Kernelentwicklung heraushalten, etwa USB Treiber. Man hat nur
eine generische USB API im Kernel und die Treiber laufen als Subprojekt.
Wenn ich eh kein USB im Rechner habe oder kein USB brauch, brauch ich mir
doch den Krams auch nicht downloaden und mit auf die Platte zu knallen?
Wie wird es bei Kernelversion 3.2 oder 4.6 aussehen? Braucht man dann eine
T3 Leitung, um die Kernelsourcen binnen Tagesfrist downzuloaden und ein NAS,
damit man die Sourcen entpacken kann? Das kann's ja wohl echt nicht sein.... 

- Speicherverwaltung.... grausig!!!
Kleines Beispiel:

Mem:    644908k total,   632568k used,    12340k free,        4k buffers
Swap:  1394604k total,   150148k used,  1244456k free,   396976k cached

Ok, blabla, Caching, Pagetable Cache hier, Filecache dort... alles Humbug...
ich seh da: Ich habe Speicher, der Kernel lagert Daten aus und wenn ich auf
meinem Desktop was machen will und z.B. ein xterm benutze, was schon geraume
Zeit da auf dem Screen rumduempelt, wird erst mal wie bloede herumgeswappt. 
Es interessiert mich nicht, wenn der Kernel irgendwas cached... aber es
interessiert und stoert mich enorm, wenn *ich* deswegen warten muss, weil
der Kernel meinte, er waere schlauer und wuesste alles besser als ich!
Ich verstehe Swap als eine Art "last ressource", auf die zurueckgegriffen
wird, wenn es gar nicht anders geht und das ist im obigen Beispiel nicht der
Fall. Daten haben solange wie moeglich im Ram zu liegen. Kein Zugriff ist
schneller als der Zugriff im Ram auf die Daten. Also sollte der Cache (sei
es pagetable oder filesystem cache) als erstes reduziert werden, *bevor*
auch nur ein Byte an Daten ausgelagert wird. 
Ausserdem ist die Kontrolle ueber das Swapverhalten mehr als duerftig. Wenn
ich der Meinung bin, dass der Kernel nur zwischen min. 10 MB und max. 100 MB
Cache benutzen soll, dann soll er sich auch daran halten und erst dann
anfangen Daten auszulagern, wenn der Cache sein Minimum von 10 MB erreicht
hat. Mehr als 100 MB sollte er dann aber auch in diesem Beispiel nicht als
Cache benutzen, egal ob da nun noch 200 MB zusaetzlich frei sind oder nicht. 

Interessanter verbraet W2k auf meinem Laptop deutlich weniger Ram als Linux,
so dass dort dann auch mal das abschalten der Festplatte funktioniert, weil
nicht staendig irgendwas auf die Platte geswappt wird (trotz noflushd). 


- SMP support
Unter Irix kann man per runon seine Prozesse auf bestimmte CPUs festnageln,
unter Linux wandern die Prozesse munter ueber die CPUs. Bei
Testrenderlaeufen unter Irix mit Maya konnte ich mittels runon die
Renderzeiten bis zu 25% reduzieren. 
SGI hat gluecklicherweise ein entsprechendes Projekt auf ihren OSS Seiten,
was sich der Portierung dieser Funktionalitaet widmet. 
CPU Accounting auf MP Systemen ist auch etwas, wo Linux nicht unbedingt
glaenzt, ausser durch Abwesenheit bzw. Nicht-Unterstuetzung. Oder hab ich
bisher nur nicht mitbekommen, dass man Usern oder Gruppen eine bestimmte CPU
Zeit geben kann oder Benutzergruppen auf bestimmte CPUs limitieren kann?
Z.B. der Gruppe A in der Zeit von Montags-Freitag 20 CPUs von 19-8 Uhr und
von 8-19 Uhr nur 5 CPUs, Gruppe B aber durchgehend alle 64 CPUs? 


- Benutzerfreundlichkeit... und damit meine ich nicht die Installation,
sondern die (auch wenns mancher Hardcore-Linux-Geek nicht so gerne hoeren
mag) grafische Benutzeroberflaeche aka GUI. 
Da ich vorzugsweise Gnome und kein KDE verwende, werde ich also auch nur
darauf nun eingehen. 
Gnome2.2 ist huebsch und nett, aber nahezu unbrauchbar. Z.B. wurde nun
Galeon1.4 durch Galeon2.x ersetzt. Unter Galeon1.4 konnte man Anim-Gifs
kontrollieren, etwa dass sie staendig abgespielt werden, gar nicht oder nur
einmal. Das ist komplett beim neuen Galeon rausgefallen. Ebenso kann ich
nicht mehr so einfach die Proxy Einstellungen fuer Galeon aendern. Beim
1.4er war der Proxy schnell abgestellt, beim 2er muss ich muehsam durch die
Preferences hangeln und dann (!!!) die Gnome2.2 systemweiten
Proxy-Einstellungen aendern! 
Ebenso kann man bei Gnome2.2 nur noch systemweit bestimmen, ob Texte unter
oder neben den Icons in den Toolbars dargestellt werden sollen oder nicht.
Bei Gnome1.4 bzw. Galeon1.4 konnte man das noch getrennt einstellen. Fuer
haeufig benutzte Applikationen wie Galeon brauch ich nicht staendig den Text
unter den Icons, um zu wissen, was die Icons bedeuten. Bei neu installierten
Applikationen wuesste ich aber schon ganz gerne, was ein Icon bedeutet. 

Und ueberhaupt: 
Bei Desktop Preferences im Menu hab ich sowohl "Desktop Theme" als auch "Theme"
als auch Sawfish-UI, um das Sawfish-Theme einzustellen... und dann gibt es
da z.B. auch noch den gtk-theme-switcher, um auch das Theme fuer alte gtk1.4
Programme einstellen zu koennen. Den Metatheme-Editor kann man gleich ganz
vergessen, da man dort nicht die einzelnen, installierten Themes auswaehlen
kann. Somit hat man also sage und schreibe 3-4 Theme-Editoren, um sich das
Aussehen des Desktops zusammenzukleistern - aber in keinem kann man z.B.
trivial die Farbe der Menus, der Toolbars oder sonstiger Hintergruende in
Fenstern konfigurieren, wie es z.B. unter Windows mit wenigen Klicks (rechte
Maustaste auf Desktop -> Eigenschaften -> ...) moeglich ist. Beim Gnome
Top-Panel kann man sogar gleich gar keine Properties im unteren Edge-Panel
einstellen. 

Und sowas soll benutzerfreundlich sein? Sowas soll bedienbar sein?
Also wirklich!
Um mal den Vergleich zu einer anderen Architektur und einem voellig anderem
Betriebssystem zu ziehen: Unter AmigaOS mit MUI konnte man ein default
"theme" auswaehlen und komplett konfigurieren: von den einzelnen Buttons wie
radio buttons, check boxes ueber das Aussehen der Sliders bis hin zu den
Hintergruenden der einzelnen GUI Elemente. Und jede MUI Applikation konnte,
wenn man es wollte, den eigenen Beduerfnissen - vom default theme abweichend
- konfiguriert werden. *Das* nenn ich benutzerfreundlich!

Gnome2.2 sieht huebsch aus, aber ist nahezu unbrauchbar und geht in die
Richtung, dass der User gegaengelt wird, anstatt ihm die Freiheit und die
Moeglichkeiten zu geben, die er braucht. 

Also mich wundert es nicht, wenn immer wieder aufs Neue der Durchbruch von
Linux auf dem Desktop in Frage gestellt wird - wenn man noch nicht mal die
Hintergrundfarbe der Fenster einstellen kann!


So, und nun bin ich mal auf die typischen "der depp hat ja eh keine Ahnung"
Flames gespannt... ;-)) 

-- 
Ciao...              // 
      Ingo         \X/



Reply to: