[Linux] Re: linux&freeBSD

---------

New Message Reply About this list Date view Thread view Subject view Author view

From: Serdar Koylu (serdarkoylu@fisek.com.tr)
Date: Thu 12 Sep 2002 - 13:34:15 EEST


Selamlar..

12 Sep 2002 12:36 EEST tarihinde yazmışsınız:

> > Kernel isi gene linux'la buyuk benzerlikler gosteriyor. Ama 4.4BSD kernel'i
> > major design consideration'lar sadece "gerek oldugunda" yapiliyor.
>
> > Ayrica FreeBSD preemptive multitasking gibi ozellikleri zaten
> > barindiriyor.

Hatta, open, malloc, exec, ve hatta hatta "fork" bile destekliyordur :))

guncel isletim sistemlerinin hepsi (Windowslar azicik mustesna) icin siradan bir olay olan preemptive multitasking bnece bir kiyaslama icin en son bakilacak sey.

 
> Bunlar ne demek? Copy-paste mi ettiniz bir yerden? :)

Sanirim bencede oyle Burak Hocam. BSD kerneli preemptivite yonunden degil, bilhassa soket mimarisi yonunden major farklar tasir. Zaten bu soket isi bildigim en iyi BSD'ler uzerinde implement edilmis. Dahasi bu network soketleri BSD Soketi olarak biliniyor hatta literaturde. Gerci son gunlerde 2.4 kernel ile kiriyorum kafami ve BSD yapisina biraz daha yoneldigini farkediyorum. Ama Kernel ile is bitmez. Monolith kernel mimarilerinde is yuku cogunlukla kernel tarafindan saglanirken API system library seviyesinde islenir. Ornegin thread mekanizmasi cogunlukla library seviyesinde duzenlenirken, VM kernel tarafindan yurutulur. Bu acidan sadece kernelin tek basina, iki OS arasinda buyuk farklar getirebilecek kadar bir mantalitesi olmaz. Ornegin Win2K kernelleri eski dev (big) VMS Microkernel yapisindan ziyade microkernele emule edilmis bir tur BSD kernel gibi gorunuyor. Ustten bakinca kernelin modulerligi daha ziyade monolith kernellere benziyor. Alttan bakinca da BSD'ye. Ama icine girerseniz libraryler gozunuze bi
r gozluk takiyor ve BSD'Nin sunmadigi Fiber threadlar, Win32 API, Driver registration servisleri vs. ile bambaska bir dunyaya girmis oluyorsunuz.

BSD ile Linux arasinda mimari farklarini verebilecek kadar cok bilgim yok. ama tecrubelerimde network islerinde daha saglam, leack, lock, non-blocking, latency gibi mevzularda daha iyi oldugunu, socket throughputh yonunden cok iyi olmamasina ragmen low latency ve az blocking gibi etmenlerden, bilhassa yuk altinda daha iyi performans verdigini gorebiliyorum. Kernel burst modu paket alma gondermede son derece basarili. Diger yandan servis latency bir hayli dusuk. Gerci ayrilmis CPU kaynaklari yonunden az sayida islem icin digerleriyle aralarinda cok fazla fark yok ama, yuk artinca kolayca farkedilen bir iyilesme gozleniyor. Neden ? Bilmiyorum. Ama ornegin AIX stream olarak I/O yaparken hic bir sistemin veremedigi performansi veriyor. Buda bilhassa buyuk veritabanlari ile filan ugrasirken cok hissedilen bir performans sagliyor. Oysa ne BSD ne Linux bu mekanizmayi kullanmiyor.

Linux ise library seviyesinde cok genis bir API sunmasi ile basarili. Linux API, POSIX, SysV, BSD gibi pek cok standart API'ler yaninda Win32 API Bile sunabiliyor (wine ve Kylix ?). Kerneli cok sade ve yalin. Buda kernelini hem daha stabil yapiyor, hemde genislemesini kolaylastiriyor. BU yonlerden kazandigi arti puan. Ama bellek modeli, thread modeli ve network altyapisi yogun yuk icin duzenlenmis gibi gorunmuyor pek. yogun yukun altindan kalkamaz demiyorum. Ama gerek dosya sisteminin intermediate seviyesi, gerekse process memory allocation teknikleri high high end sistemler icin uygun gorunmuyor. Ornegin 32 CPU, 256 GB RAM, 50 TB harddisk takinca bile boyle bir sistemden yeterince performans alamiyorsunuz. Halbuki, orta karar 2/4 CPU, 2-4GB, < 1 TB Disk gibi sistemlerde son derece verimli olabiliyor. Ama linux'un POSIX uyumlulugu yaninda bir de MOSIX uyumlulugu var. Yani siz boyle sistemleri cok kolayca paralel hale getirebiliyorsunuz. Dagitik dosya sistemleri cok fazla olgunluga sahip degiller henuz ama, b
ilhassa uygulama seviyesinde calisirsaniz daha ucuza cok guclu clusterler cikarabilirsiniz.

Dedigim gibi guncel Linux kerneli icin bile ustunkoru bilgilere sahibim. BSD Ve diger kernelerin de low-level mekanizmalari hakkinda cok bilgim yok. Ama benim gozumde Linux ile BSD'nin farki bu sekilde. Elbette user-space icin cvsup gibi onemli farklar var. Ama bunlar her iki dunyadada bir sekilde halledilmis durumda. Dahasi GNU/Linux'lar artik o kadar buyuk bir user-space destegi sunuyorlarki, BSD'nin bu konuda nal topladigini soylemek yanlis olmaz. Ama bu BSD'nin yetersiz oldugu anlamina da gelmez. Bence tek server uzerinde web isletecekseniz, mail isi yapacaksaniz son derece mantikli bir secim olur. Ayni sistemle daha cok yuke dayanabilirsiniz. Fakat, mail server icin virus temizleyici lazim olursa Linux seceneklerinin bollugu sizi ikileme goturuverir.

Kernel yapisi onemli ama o kadar buyuk bir detay degildir. Tipki sadece temin etme/etiket fiyatina bakilmadan toplam satinalma maliyetine gore davranmak gerektigi gibi, Sistem tercihi yaparken de toplam kabiliyetlere ki buna destek ve bakim gereksinimleri de dahildir, bakmak gerekmez mi ? Belki sizin icin Win2K cok daha iyi ve hatta ucuz olabilir.

Ama cogu insan aslinda diger sistemin yapacagi is icin daha uygun oldugunu, daha yuksek fiyat performans oranini daha dusuk TCO ile saglayabildigini gormek istemiyor. bir sekilde fanatik bir taraftar gibi tuttugu takimin OS'unu her zaman her yerde sampiyon ilan ediveriyor. Ne kendi iddiasi olan OS'un imkan ve kabiliyetlerini tam biliyor, ne de bir diger OS'un kendine sunabileceklerininden haberdar. Sonucta bu tiplerin cikip benim OS'um iyidir gibisinden yaklasim da en azindan beni cileden cikariyor. Dunku cocuklardan Win2K'nin iki diski tek disk gibi kullanabildigini ballandira ballandira cesitli listelere yazanlar oldu, garibim bunun kirk yildir (abarti oldu, herhalde en fazla 25 yillik bir gecmisi vardir stripping'in, UNIX'inse 32 yil filan) UNIX'lerde oldugunun farkinda degil, Win2k'dan yillar onceden beri de Linux'da oldugunun farkinda hic degil. Ama yorum yapmaya curet ve cesaret edebiliyor.

Oncelikle gercekten dogru sistem secimini yapmak istiyorsaniz, sistemlerin imkan ve kabiliyetlerini hakikaten iyi bilmelisiniz. BSD veya Linux, Linux veya Windows flame'i cikarmadan, bana BSD'nin seytani Linux'un pengueninden daha sevimli geliyor ve onu kullaniyorum diyebilirsiniz. Teknik yonden sifir puan alacaginiz bir mazeret olmasina ragmen, sizin kullanim tercihiniz icin tartisilamaz sekilde yeter puan olacaktir. Gerci genelde BSD ve Linux arasinda yapilan tercihlerde boyle yaklasimlardan ziyade tecrube veya teknik biligi one cikiyor ama Windows ve BSD/*UNIX/Linux secimlerinde daha cok bu sekilde davraniliyor.

Saygi ve sevgiler..

-----------------------------------------------------------------------
Liste üyeliğiniz ile ilgili her türlü işlem için
http://liste.linux.org.tr adresindeki web arayüzünü kullanabilirsiniz.

Listeden çıkmak için: 'linux-request@linux.org.tr' adresine,
"Konu" kısmında "unsubscribe" yazan bir e-posta gönderiniz.
-----------------------------------------------------------------------


New Message Reply About this list Date view Thread view Subject view Author view

---------

Bu arsiv hypermail 2b29 tarafindan uretilmistir.