Mac osX vs Linux, a mikrokernel átka?

Fórumok

Mac osX vs Linux, a mikrokernel átka?

Hozzászólások

Fura eredményt hozott az Anandtech tesztje, amiről hup-on is szó volt nemrég, http://www.hup.hu/modules.php?name=News&file=article&sid=9580&mode=&order=0&thold=0
Minden teszt egyoldalú valamilyen szempontból, és torzítja a valós helyzetet. De ekkora különbséget nem lehet a teszkörülményekkel magyarázni. Bizony a Mac Osx Tigere nagyon lemaradt.
Érdekes lett volna összevetni a Tigert a FreeBSD-vel is, mert a gyökerei oda nyúlnak vissza. Darwin=Mach+FreeBSD.
Mivel a FreeBSD egyáltalán nem teljesít rosszabbul MySQL-el mint a Linux, sőt... valószínűleg egy ilyen összehasonlító teszben is siralmasan alulmaradt volna a Tiger. Ami elég érdekes főleg egy amolyan fork esetében. Talán a mikrokernelesé erőltetett Darwin lenne a hibás? Jobb lett volna Mach nélkül hagyni a Darwint? Vagy egyenesen jobb lett volna ha a standart FreeBSD kernel alapokra építették volna az Applenél az Osx-et?
A microkernel vs monolitikus kernel vitában, az szólt leginkább a mikrokernel ellen, hogy lassúak voltak. Van a linuxnak is mikrokernelre átírt változata több is, és még az L4 Linux is átlag 10%-al lassabb mint a nornál Linux. Az L4 pedig szerintem fejlettebb mikrokernel a Mach bármely változatánál.
Egyáltalán minek kellett "elrontani" a jó FreeBSD kernelt a Mach-al? Csakazért, hogy az Apple a "leginnovatívabb cég" jellegét hangsúlyozza?
Videoszerkesztésnél épp lenne haszna a mikrokernelnek, például biztosítani lehet hogy egy videolejátszás bármilyen CPU terhelés esetén elérje a 25fps-t. Ahhoz viszont azt ki is kellene használnia az alkalmazásoknak. L4Linuxnál ehhez speciális glibc kell, különben hiába az L4 mikrokernel ebből semmit nem érzékelnek a rajta futó programok, és perta azokat úgy is kell fordítani.
Úgy tudom a Mac Osx-es programok, nem rendkelkeznek mikrokernellel együttműködő funkcióval. Akkor meg minek?

[quote:b5d9673810="zoozo"]Fura eredményt hozott az Anandtech tesztje, amiről hup-on is szó volt nemrég, http://www.hup.hu/modules.php?name=News&file=article&sid=9580&mode=&order=0&thold=0
Minden teszt egyoldalú valamilyen szempontból, és torzítja a valós helyzetet. De ekkora különbséget nem lehet a teszkörülményekkel magyarázni. Bizony a Mac Osx Tigere nagyon lemaradt.
Érdekes lett volna összevetni a Tigert a FreeBSD-vel is, mert a gyökerei oda nyúlnak vissza. Darwin=Mach+FreeBSD.
Mivel a FreeBSD egyáltalán nem teljesít rosszabbul MySQL-el mint a Linux, sőt... valószínűleg egy ilyen összehasonlító teszben is siralmasan alulmaradt volna a Tiger. Ami elég érdekes főleg egy amolyan fork esetében. Talán a mikrokernelesé erőltetett Darwin lenne a hibás? Jobb lett volna Mach nélkül hagyni a Darwint? Vagy egyenesen jobb lett volna ha a standart FreeBSD kernel alapokra építették volna az Applenél az Osx-et?
A microkernel vs monolitikus kernel vitában, az szólt leginkább a mikrokernel ellen, hogy lassúak voltak. Van a linuxnak is mikrokernelre átírt változata több is, és még az L4 Linux is átlag 10%-al lassabb mint a nornál Linux. Az L4 pedig szerintem fejlettebb mikrokernel a Mach bármely változatánál.
Egyáltalán minek kellett "elrontani" a jó FreeBSD kernelt a Mach-al? Csakazért, hogy az Apple a "leginnovatívabb cég" jellegét hangsúlyozza?
Videoszerkesztésnél épp lenne haszna a mikrokernelnek, például biztosítani lehet hogy egy videolejátszás bármilyen CPU terhelés esetén elérje a 25fps-t. Ahhoz viszont azt ki is kellene használnia az alkalmazásoknak. L4Linuxnál ehhez speciális glibc kell, különben hiába az L4 mikrokernel ebből semmit nem érzékelnek a rajta futó programok, és perta azokat úgy is kell fordítani.
Úgy tudom a Mac Osx-es programok, nem rendkelkeznek mikrokernellel együttműködő funkcióval. Akkor meg minek?

Szerintem olvasgass még kicsit. :)

[quote:c08ab94985="zoozo"]Videoszerkesztésnél épp lenne haszna a mikrokernelnek, például biztosítani lehet hogy egy videolejátszás bármilyen CPU terhelés esetén elérje a 25fps-t.

?

Most aztán nagyon jol felvilágosítottad őt. :wink:

[quote:3af444c2d9="bra"]
Szerintem olvasgass még kicsit. :)

Szerintem egy fórumon nemcsak két ember beszélget. Kíváncsiak vagyunk a véleményedre.

Akkor hasonlítsuk össze a MacOSt a BeOSsel! Mind2 mikrokerneles. Mondjuk Apache2 teljesítményben.

Flame, Flame, Flame de miről is?

Mit rontott el az Apple? Mi olyan rossz a Mac-ben? Mi ez a hablaty a microkernelről? Nem teljesít jól szerverként? Ki a *#y#&-t érdekel? Egy desktop rendszerre max. egy-egy fejlesztői környezet kerül.

A mikrokernel alapvetően nem lassúbb, mint a monolitikus kernel, hiszen a kernelből kiemelt processzek nem vesznek el plusz erőforrásokat, amíg nem kerülnek felhasználásra. Szerintem a mikrokernel problémája az extrém terheléseknél mutatkozik meg, amikor a legtöbb feladat kikerül a kernel hatásköre alól és nagyon sok processz fut párhuzamosan.
Ezért is tartom jobbnak a monolitikus kerneleket szerverhez. Viszont desktopra talán a mikrokernel jobban teljesít.
Persze minden a megvalósítástól függ.

[quote:6f70f24031="whitehawk"]Akkor hasonlítsuk össze a MacOSt a BeOSsel! Mind2 mikrokerneles. Mondjuk Apache2 teljesítményben.

Vagy az NT-vel... Eh eh eh...
Bocs.

[quote:c0ee8f0254="zoozo"]Videoszerkesztésnél épp lenne haszna a mikrokernelnek, például biztosítani lehet hogy egy videolejátszás bármilyen CPU terhelés esetén elérje a 25fps-t.

Ezt a realtime ütemezéssel kevered. Az van linux alatt is, de csak root-ként futó processzeknek van engedve. Ami persze nagyon jó, mert így egy sima user nem zabrálhatja el teljesen a cpu-t, viszont kb használhatatlanná is teszi, mert pl egy sound servernek jó lenne a realtime, de az elfogadhatatlan, hogy az összes kliensnek is emiatt root jogosultsággal kelljen futnia. Kéne rá egy normális interfész (tudom, van capabilities patch, de az biztonsági szempontból egy rémálom), ami rendesen kezel jogosultságokat és ezek alapján engedi user folyamatoknak is a realtime prioritást. Szerintem ha ez lenne, egy nagy akadály hárulna el a "desktop" linux előtt.
Egy szó, mint száz, ennek semmi köze a monolitikus vs mikrokernel témához. Legfeljebb annyi, hogy a mikrokernel esetén a kernel folyamatok is automatikusan preemptálhatóak, linux alatt viszont ezt explicite engedélyezni kell (és ezzel elszenvedni egy pár %-os teljesítményvesztést).
A preemptálást megakadályozó kernel lock-ok viszont sajnos a mikrokerneles rendszerekben is kellenek. Az egyik tipp a darwin pocsék teljesítményére pont az, hogy primitív a kernel lock kezelése, emiatt egy csomó független dolognak is várnia kell egymásra, pedig nem is használnak közös adatszerkezetet.

[quote:8ea442b43e="AttiSan"]Mit rontott el az Apple? Mi olyan rossz a Mac-ben? Mi ez a hablaty a microkernelről? Nem teljesít jól szerverként? Ki a *#y#&-t érdekel? Egy desktop rendszerre max. egy-egy fejlesztői környezet kerül.

Nem teljesít jól szerverként, azért probléma, mert az Apple árul szervert is. Hogy ki fog ilyet venni? Hát ezek alapján senki. Vagy legalábbis nem OSX-et fog rajta használni.
Továbbá a feltárt problémák egy része (rendszerhívások nagy overhead-je) nem csak szerveralkalmazásokat értinti, hanem mindent, ami rajta fut. Csak néha jobban, néha meg kevésbé. A kezelőfelületnél azért nem tűnik fel, mert nincs mivel összehasonlítani. Miért érekes?
1. Mert lehetne rajta javítani, mégpedig nem is keveset.
2. Mert az Apple termékek nem csak 2.5-2.7GHz-es dual G5-ökből állnak, hanem van egy csomó kissebb teljesítményű cuccuk is (mac mini pl.), ahol már esetleg észrevehető lenne a javulás desktop felhasználás esetén is.

[quote:5ee673b620="XMI"][quote:5ee673b620="AttiSan"]Mit rontott el az Apple? Mi olyan rossz a Mac-ben? Mi ez a hablaty a microkernelről? Nem teljesít jól szerverként? Ki a *#y#&-t érdekel? Egy desktop rendszerre max. egy-egy fejlesztői környezet kerül.

Nem teljesít jól szerverként, azért probléma, mert az Apple árul szervert is. Hogy ki fog ilyet venni? Hát ezek alapján senki. Vagy legalábbis nem OSX-et fog rajta használni.
Továbbá a feltárt problémák egy része (rendszerhívások nagy overhead-je) nem csak szerveralkalmazásokat értinti, hanem mindent, ami rajta fut. Csak néha jobban, néha meg kevésbé. A kezelőfelületnél azért nem tűnik fel, mert nincs mivel összehasonlítani. Miért érekes?
1. Mert lehetne rajta javítani, mégpedig nem is keveset.
2. Mert az Apple termékek nem csak 2.5-2.7GHz-es dual G5-ökből állnak, hanem van egy csomó kissebb teljesítményű cuccuk is (mac mini pl.), ahol már esetleg észrevehető lenne a javulás desktop felhasználás esetén is.

Ha arul ilyet az apple, akkor tuti meg fogjak venni (ha holnap kitalalja, hogy a lila billentyuzet milyen innovativ, egy het mulva mar vettek is paran):). Neztem rola egy leiras szeruseget, hogy mi lehet ez, gyakorlatilag apache, stb, amit amugy is hasznalunk sokan sok helyen, hozza jokis osx-es gui. Van egy masik topic, ahol a csoka ossze akar rakni egy debian servert, de nem sikerul neki, na az ilyen embereknek talalhattak ezt ki. Aki kicsit is ert hozza nyilvan nem ezt fogja valasztani.