1. sayfa
AŞurada bir güzel bahsetmişler.https://medium.com/cloud-and-servers/isolation-vm-docker-unikernel-nedir-7826521e862f Unikernel dediğin bildiğin çekirdekten gerekli olmayan modül ve kütüphanelerin çıkartılmasından başka bir şey değil. Böylece açılışta gereksiz modül ve kütüphaneler yüklenmediği için etkinlik artırılıyor. Çekirdeği kırpıp taşıyıcıyla harmanlamışlar, başına da uni eklemişler, tüm espri bu. Son kullanıcı ile bir ilgisi olan durum değil, heyecan yapmana gerek yok. Bildiğin tuzsuz çekirdek işte! |
yaptığım araştırmalarda adamlar +%20 performans farkından bahsediyor. özetle şu an kullanılan işletim sistemlerinde ; her an her şey olabilir diyerekten refleks modunda çalışan bir kernel bir program çalıştırılacağı zaman sanki 1 saniye sonra başka bir program çalıştırılacak mış gibi sözüm ona çok işlevlilik adına var olan sistem kaynaklarını bölerken performansı da kafadan bölmekte. bir konuyu tam anlamak adına temellere dönülürse https://www.c64-wiki.com/wiki/Kernal Commodore'un düşük seviyeli İşletim Sistemi, Kernel'den (Robert Russell tarafından) daha önce yanlış yazılmış ve daha sonra sayısız yayında tekrarlanan Kernal olarak adlandırıldı. Kernal, Commodore'un 8 bitlik bilgisayar serisi boyunca tekrarlanan ve Commodore PET ile başlayan, düşük seviye donanım arayüzleri grubuydu. 80'li yıllarda birçok kullanıcı KERNAL kelimesinin "Klavye Giriş Okuma, Ağ ve Bağlantı" kısaltması olduğu anlamına gelir. KERNAL is an abbreviation for "Keyboard Entry Read, Network, And Link" c64 kerneli teknik olarak bir işlemciden bağımsız bir saat döngüsü içinde çalışan bağımsız bir çip devresiydi. yani işlemciye yük olan bir şey değildi. ve şu an kernel dediğimiz şey işletim sisteminin %99 u ve işlemciden bağımsız değil işlemciye yük olarak çalışmakta olduğu için performanstan %20 kayıplara sebep oluyor. uzun lafın kısası linux dediğimiz işletim sistemi kernel yapısı üzerine bir sistem olduğu için evet her şey düşünülmüş ama pratiklik anlamıyla ilerleme unikernel OS işletim sistemleri yaygınlaştığında ve benchmark testlerine linux ne kadar hızlı olsa da %20 performans kaybı olduğu ortaya çıkınca en başta sunucu sektöründen başlayan kullanıcı kayıpları yaşayacaktır. dedikleri gibi değişmeyen tek şey değişimin kendisidir. linux olayına vakti zamanında kişisel olarak pek alışamamış bir kullanıcı olarak bizim hissettiklerimizi ve yaşadıklarımızın aynısını linux kernel camiyası bunu şimdiden yaşamaya başlaması ne güzel bu arada unutmadan linux üzerindeki farklı OS emulatörleri sırf bu yüzden yeterince hızlı olamadıkları gibi 2 kat daha yavaş çalıştıklarını da unutmamak lazım ! var olan kernel yapısı güvenlik kaygılarıyla güvenliği artırmak adına gerekli gereksiz işlemci döngüleriyle zaman ve performans kaygıları oluşturuyor. unikernel yapısı derlenilecek program yapılarını sanalmakine iso formatında bir yapıya döndürecek gibi bu şekilde ram üzerinde doğrusal alan içerisinde uygulamaların çalışaması olası bu şekilde performans artışları kaçınılmaz. diğer açıdan önünüzde 3 ters kupa ve top hangisinin altındaymış diyen işlemci güvenliği uygulamaları var olan işletim sistemlerine gereksiz hokkabazlıklar yaptırdığını unutmamak lazım işin en garibi ne varsa geçmişte var C64 ve amiga zamanında güvenlik sorunları bu kadar ciddi olmadığı için direk sisteme erişen exokernel kullanılıyordu. bunlar şimdi anca sadece sabit uygulama içeren gömülü sistemlerde var. gerçek güvenlik sorunların ihtimallerinin var olamayacağı alanlarda sağlanır bu açıdan sanal makine dosyası şeklinde uygulamaların oluşturulacağı gerçeği ortada son kullanıcı anlamıyla kullanıcı alışkanlıklarını değiştiren bir durum yok, soru şu linux kernel yazarları arasında ciddi bir tartışma var ! https://www.chip.com.tr/haber/linuxun-babasindan-cok-agir-sozler_72841.html " Linux'un patronu Linus Torvalds, Linux kernel sürümü 4.15'de bazı özelliklerin beyaz listeye alınması ile ilgili bir tartışma " burada linux kernel;'inin ciddi bir takım değişimi söz konusu olmuş ki adam bu bizim felsefemize dokunur misali gerçekten sinirlenmiş ve ağır konuşmuş linux kernel'inin en büyük sorunu var olan bir sistemin ötesinde bir ütopyayı öngörüyor olması yani gerçekler ile hayaller arasındaki fark işte burada sıkıntıları ortaya çıkarıyor. |
2 kişi ve bir konu hakkında ;http://dhbr.co/bsMp kelimelere değil yeni sistemin felsefesine bakmak lazım ! unikernel sanal makine anlamıyla ram üzerinde doğrusal adresleme anlamına gelir ! bu aynı 8-bit nes rom haritası gibi basit akıcı ve hızlı şu an bilgisayar işletim sistemlerinin yavaşlığı çok fazla api geliştirme kütüphanesinin sonsuz geliştirilebilir felsefesi yüzünden sınırlı donanımı sınırla alan içinde sınırlayan değerleri öngöremediği ve güvenlik standartlarını katman katman korumalı sistemleri kurduğu için çok büyük ve ciddi donanım performans kayıpları söz konusu bu iş için linux kernelinin bu işe uygun hale getirilmesi lazım ki bu noktada kernel denilince akla gelen isimlerden haliyle değişime ayak uydurmayan radikal söylemeleriyle karşılaşırsınız hadi ben burada düşündüğümü sizin anlayabileceğiniz kelimelerle ifade edip kolay anlaşılamıyor olabilirim ama linux kernel konusunda büyük tartışma ve gürültü çıkacağı noktalara bakın çünkü oralarda büyük bir kernel değişim akıl fikir düşünce fırtınası çıkacaktır. |
Böyle bir anlama gelmez, zorlasan bile böyle bir anlam çıkmaz. Bak anlatıyorum ama anlamak istemiyorsun, kullanılan çekirdek aynı, Linux çekirdeğini özelleştiriyor adam. Yani kullanmayacağı modül ve kütüphaneleri çıkartarak aynı çekirdeği kullanıyor. Kıyıdan çapari atıp, kalkan tutmuyı umuyorsun. Sonrada işin felsefesi gibi garip cümleler kuruyorsun. İşin felsefesi filan yok işte, koluna taktığın saatteki gömülü sistemin sanallaştırma için uyarlanmış halinden başka bir şey değil. Yani senin benim zerrece işime yaramaz. Çok meraklıysan çekirdek derleme ve özelleştirme konusunu araştır, kendine özel çekirdeğini kendin derle. Tartışma gürültü kopacak bir ortam ve konu değil bu. Sanallaştırma kullanılan sistemlerde, bir fiziksel makina üstünde bir çok sanal makina koşar. Buradaki işlem, fiziksel makinadaki kaynak darboğazına olumlu katkı yapmak amacıyla, çekirdekteki kullanılmayan modül ve kütüphaneleri çıkarmak. Yani felsefesi filan yok, sadece anlam çarpıtması var. Kullandığın yine Linux, sağ gösterip sol vuran da Linux. Kolundaki saat, televizyonundaki sistem veya başka Linux kullanan gömülü sistemlere benzer bir durum. Kolundaki saatte BTRFS ya da sıkıştırma ya da KVM desteği olsa ne olur olmasa ne olur. İşte bu tür öğeleri çıkartarak çekirdeği özelleştiriyorlar. Bu çekirdeğin çalışma mantığını değiştirmiyor, önceden RAM'ı nasıl kullanıyorsa yine aynı şekilde kullanıyor. Tek değişen RAM da tuttuğu alan. Bu tür özelleştirmeler olsa olsa bulut sistemlerinde kullanılır, son kullanıcı ile doğrudan dirsek teması olan bir durum değil yani. Dediğim gibi özelleştirme merakın varsa, LFS incele. Ama önce bir kere çekirdek özelleştirip derle, beceremezsen hiç bulaşma. http://linuxfromscratch.org/lfs/ |
verdiğin linki inceledim hatta google çeviri ile çevirdim sayfada 100 mb ı isteğe bağlı bir şekilde 5mb lık kernele bile dönüştürülebileceğinden bahsediyor. evet bunu anladım dahası wiki de hafif tek disketlik 1,44 lük linuxlar bile var bunuda biliyorum ama bu bu şekliyle sözde unikernel seviyesine gelse de ; olması gereken temel standart ihtiyaçlar değilde sadece PC de çok sınırlı işlerin yapılmasına sebep olur. özetle bu durumda bir standart oluşturmuyor. yani sözde cep telefonunda falanca sistemi çalıştırdık derler ya bunu haber yaparlar bu sadece yapılabileceğini gösterir gerçek hayatta pratik kullanımı ve uygulaması olmayan bir durum, linux un ne kadar esnek olabileceği ile ilgilenmiyorum ; linux un nasıl belli standartlarda disipline olacağına bakıyorum, çünkü donanım sınırları belli bir makine var ortada olaylara bu açıdan bakılmadığı sürece son kullanıcıların temel ihtiyaçları yok sayılacaktır. mevcut kaynaklar sınırlı ; talepler ise sınırsız olunca burada bir yerde hep bir sorun olur ! öncelikle wiki'ye yaz unikernel bak burada adamlar neredeyse işletim sistemi olmaya aday 10 proje var ! eleştiri anlamında sizin söylediğiniz gibi olsa ! isteklere göre değiştirilmiş bir linux çekirdeği derlemesini yeni bir linux türevi dağılımı adıyla zaten bu wiki maddesine yazarladı, dahası adamlar tablo şeklinde kernelin yapısı api'lerin müdahalesi alanlarını bile google görsel aramada gösteriyor. ve dahası wiki'de unikernel e tek eleştiri anlamıyla tek bir program odaklı çalışmada verimli diğer bir uygulama çalıştırılırsa aynı seviyede kaynak tüketirse bunun verim düşüklüğü olacağını söylüyor. teknik olarak son kullanıcı anlamıyla sistem kaynaklarını %100 kullanan fazla bir program yok dahası olsa bile aynı anda 2 tane %100 kaynak tüketen olmayacaktır. bu anca daha büyük server sunucu hizmetleri anlamında bir eleştirir. son söz olarak kernel derleme demişsiniz de bende size şunu söylüyorum, kullanıcı kernel derlemesi saçma zaten ne kadar derleyebileceğiz ki ! bizim bildiğimiz şu komutu gir var olan kütüphanelere göre kernel sistem içi iç bağlantılar oluşturuyor. özetle derle demekle verim elde edilmiyor. çünkü uni kernel seviyesindeki basitlik ve kolaylığa ulaşabilecek seviyede değil zaten bu olsaydı ! unikernel benchmark sonuçlarında ! a bakın aynıymış denilirdi !!! :) kernel'in en saf haliyle gelmesi ! uygulamaların ise kendi exe veya elf yapısına kütüphanelerin eklenmesi ve bunu sistemin sınırlandırılacak ram alanı içinde güvenliğinin oluşturulması önemli, özetle benim burada bahsettiğim şey bir öngörü ve şu ana kadar belki örneğini görmediğiniz bir şey sonuç olarak güvenlik bir ihtiyaçsa sistem sanal makineye geçecektir. sonuç olarak hız bir ihtiyaçsa kernel standartlara uygun bir şekilde sadeleşecektir. |
Linux sanki değişimlere uyum sağlayamayan, eskimiş gibi, değişime ne kadar direnecek demişsin. Linux kernel ile savaşacağına Türk programcılara gerçekten faydalı olacak konuları araştırsana. Bu arada geçtğimiz Eylül "Pardus 100% milli sistemimiz herkese hayırlı uğurlu olsun" tarzı konular patladığı sırada yaptığım bir araştırmada, Linux kernel projesindehttp://dhbr.co/bsUi katkıda bulunan 547 kişi arasında hiçbir Türk olmadığını görülmüştü. Hiçbir Türkün tek satır katkısı olmayan bir projeyi neden eleştirirsin? ve Linux değişimlere oldukça iyi uyum sağlıyor: 2011 Raspberry Pi var bende, GPU dahil toplam RAM 256MB ve onda çalıştırdığım GNU/Linux sürümü Raspbian RAM 'i patlatmadan ısıtmadan çalışıyor ki o da GNU OS'nin (yani Linux kernel hariç tüm sistem ve kullanıcı programları) hemen tüm kütüphaneleri (software library) paylaşımlı kullanması ile ilgili. Ayrıca istediğin programı sisteme tam uyumlu olacak şekilde derleme imkanının da olması (GNU C Compiler ve Autoconf sayesinde) Bu sayede örneğin, OpenSSL 'i Raspbian'da en verimli çalışacak sekilde sıfırdan derleyip kurdum. Yani kernel den cok GNU OS'un büyük esnekliği ve kullanıcıya verdiği güç (lisans şartları sonucu) ön planda. Bu önemli ayrıntıları hesaba katarak konu açarsan herkese daha faydalı olacağını düşünüyorum. |
bende 1333 mhz ram 4000mb/s yani saniyede 4gb gibi bir hızdan bahsediyorum 1 saniye içinde ve elimde 4gb ram var ve veri erişimi yazma okuma hepsi 1 saniye içinde oluyor. evet ram disk açılış süresi biraz uzunca olabilir. 35 ile 45 saniye kadar dosyalar sıkıştırılmış formatta ram e yükleniyor oradan açılıyor sd dosya transfer hızı 40mb/s dosya sıkıştırılmış olduğu için 3x kat hesaplarsanız saniyede 100 veya 150 mb/s hızında dosyalar rame açılıyor. bu teorik rakamların hepsini pratik anlamda kullanıyorum win de 2 mb lık ifran view açılış hızında linux üzerinde 300mb lık gimp2 grafik düzenlemeyi açıyorum yani 20x kat daha hızlı unutmayın PC donanımı en düşük çalışan halkasının hızında çalışan bir donanımdır. tabi ki linux tede bazı sorunlar var elbet şu dosya bağımlılık saçmalıkları yüzünden ram alanı sınırlı olunca Tiny Core Linux kullanmak en mantıklısı bunu geliştirenler tüm kütüphaneyi değil ! bir uygulamanın gereksinimi olan kısmını internetten indiriyor. yoksa 10 mblık bir linux uygulaması için tüm kütüphaneyi indireyim deseniz kafadan 5 gb gider bunda bu oran makul seviyeye gelmiş ! linux masa üzeri kütüphane saçmalığı yüzünden ileride firefox bir masa üzeri çıkartsa ne güzel olur WASM zaten api kullanmayan C gibi dillerde yazılmış programları browser üzerinde çalıştırabiliyor. firefox pdf açabiliyor mp3 avi mp4 oynata biliyor. bir kaç tane daha masa üzeri yeteneğini kazanabilirse ki bu aslında son derece basit bir kaç eklentiyle mümkün linux masa üzeri oturmayan standartları tarih olacak tabi bunlar güzel hayaller. diğer taraftan muhalefet edecek olanlar firefox kafadan 50mb ram yiyor diyecektir. yaw 2 program çalıştırıp 3. program için tekrar kütüphane ildirip 1 gb hdd çöplüğü yapan dosyalardan kurtulunması gerekiyor. bu açıdan WASM standartları hayalleri süslüyor. çünkü hangi dilde yazılırsa yazılsın api saçmalığına fazla bulaşmayınca evrensel bir binary formatı olduğu ortada sanal makine üzerinde sınırsız eş güdümlü format farkı olmaksızın gerçekten pc kullanım alanını genişletip özgürleştirebilecek bir teknoloji gibi ! burada fazla teknik detaya girmeden en basit kullanıcının bile ileride neler olabileceğini anlaması için basitçe yazıyorum. bu arada kernel dediğiniz şey aslında bir analog saat gibi bir şey ve saat 12 dilimi varsa 12 tane hafızası olan sıralamaları düzgün nizamanda dağıtan sanal bir saatten başka bir şey değil özetle ne kadar basit olursa sistem kaynak aktarımı o kadar iyi olur ! çünkü işlemci ve ram arasındaki veri kanallarınında yazılım müdahalesi anlamıyla düzenli akışını sağlar. kernelin tek eleştirilen yönü mimarisinin çok fazla karmaşıklaşması çünkü kernel dediğiniz şeyin gerçek adı bile kernel değil kernal dır !
ne kadar sade ise o kadar rahat kernel ne kadar karmaşık ise o kadar yavaşlık vardır. fazla komut yazılması yapılacak işlemleri uzatır. teoride dünyanın en hızlı işletim sistemi ancak bir işlemcinin ön-belliğinin yarısı kadar olursa o gerçekten hızlı olur. sonuç olarak pc dediğiniz şey 4 haneli hesap makinesinden başka bir şey değil 8 bit işlemciler var 4 bit işlemciler var 4 bit işlemcileri anlayamazsanız şu an kullandığınız 64-bit işlemciyi hiç bir zaman anlayamazsınız. |
1. sayfa
unikernel aslında javanın tüm donanımlarda çalışa bilmesi misali sanal makine sistemini
+1 adım ötesinde bir işletim sistemi olabilmesi anlamında bir sistem
bunda sistem bir çalışabilir exe anlamıyla bir şey ortaya çıkaracağı zaman
derleyici o exe'ye sınırları belli söz misali 1mblık bir işletim sistemi kerneli ekleyecek,
program kendi bünyesi içine yerleştirilmiş standart kerneliyle çalışacak
bu açıdan bilindik diğer işletim sistemlerindeki sistemi yavaşlatan öngörülemez
sanki sonsuz bir alanmış gibi yapılan cpu'nun saf bakkalın veresiye defteri gibi işlem yapmasını engelleyecek,
özetle peşin paraya iş yapan esnaf gibi cpu verimli bir şekilde çalışacak :)
bu arada erken dönem unikernel linux çalışamları şimdiden başlamışa benziyor
https://www.google.com/search?q=unikernel+linux
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu mesaj bu kişi tarafından değiştirildi ProjectMan -- 3 Nisan 2019; 15:41:19 >