Bu site emekli olmuştur. Arşiv amaçlı olarak
BT AKADEMİ
sponsorluğunda yayın hayatına devam etmektedir.
Ana Sayfa
.net TV
Makaleler
Kaynak Kod
Haberler
Serbest Köşe
Canlı Köşe
Forum
C#nedir?
Ekibimiz
RSS
ADO.NET/SQL
ASP.NET
C++ / C++.NET
C# / VC#/.NET
XML / Web Serv.
YAZAR HAKKINDA
Ahmet Faruk Nacaroğlu
http://www.csharpnedir.com/
İletişme geçmek için
tıklayın
.
40
Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için
tıklayın
.
Yayınlanan diğer makaleleri için
tıklayın
.
İlgili etiketler:
C# / VC#/.NET
Ahmet Faruk Nacaroğlu
YAZI HAKKINDA
Türü
:
Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır.
Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi
:
Başlangıç
Kategori
:
C# / VC#/.NET
Yayınlanma Tarihi
:
19.10.2002
Okunma Sayısı
:
43339
Yorum Sayısı
:
2
yorum yaz
SİTE İÇİ ARAMA
Üye
GİRİŞİ
Üye girişi için
tıklayın
.
Kullanıcı Adı
Şifre
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
Şifremi / Kullanıcı Adımı unuttum.
C#nedir? hesabınız yok mu?
Üye olabilmek için
tıklayın
.
Serbest KÖŞE
(?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır.
Bu yazılar editör incelemesine girmeden yayınlanır.
Silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
Bende Yazmak İstiyorum
Blogroll
Burak Selim Şenyurt
Bellek Yönetiminde Verimlilik için İpuçları (Rust Odaklı)
9.5.2025
Burak Selim Şenyurt
Rust ve Güvenli Bellek Yönetimi Hakkında
9.5.2025
Diğer Herşey
»
Makaleler RSS
»
Video Gönder
»
Makale Gönder
»
Serbest Köşeye Yazı Gönder
»
Yazar Başvurusu
»
C#nedir? Ekibinde Olmalıyım!
Sponsorlar
Ana Sayfa
/
Makaleler
/
Ahmet Faruk Nacaroğlu
/
C# / VC#/.NET
/
.NET'in CLR, CTS ve JIT derleyicileri
.NET'in CLR, CTS ve JIT derleyicileri
Favorilerime Ekle
Gönderiliyor lütfen bekleyin...
arkadaşıma gönder
Arkadaşınızın email adresi:
*
Mesajınız:
Önceki yazımızda "dot NET" platformu konusuna giriş yapmıştık.
(Yazıyı okumak için tıklayın)
Burada ise daha detaylı olarak .NET kavramlarını inceleyeceğiz ve .NET'le Java'nın karşılaştırıldığı bir testin sonuçlarına yer vereceğiz.
.NET platformunda istediğimiz programlama dili ile program yazabileceğimizi önceki yazımızda söylemiştik. Bunun için tek şart, kullandığımız dilin .NET için yazılmış olan bir derleyicisine ihtiyacımız olduğudur. .NET uyumlu programlama dili oluştururken belirli standartlara uyulması gerekir. Bu standartlar CLS (Common Language Specifications - Dillerin ortak özellikleri) ile belirlenmiştir. CTS(Common Type System) ise veri tipleri, nesneler, arayüzler ve programlama dillerine ait özellikleri tanımlar ve CLS'in bir parçası olarak karşımıza çıkar. CLS'de tanımlanmış kurallara uymak şartı ile istersek kendi programlama dilimizi dahi geliştirebiliriz veya herhangi bir dili .NET platformunda uygulama geliştirmek üzere değiştirebiliriz.
CLR ,programlarımızı değişik şekilde derleyebilir. Varsayılan derleme türü JIT(Just IN TIME- çalışam anında derleme) 'dır. Program çalışırken daha önce derlenmemiş bir parçasına gelince hemen o kısmı da derler ve bunu hafızda chach'e koyar. Tekrar aynı program parçasını çalıştırmak gerekirse burayı hafızadan çalıştırır. Eğer RAM 'imizi yeteri kadar büyükse, programın tamamı derlenmiş ve hafızada depolanmış durumda olabilir. Bu durumda programımız çok hızlı çalışır.
Hafızamızın yeteri kadar büyük olmadığı durumlarda EconoJIT (Ekonomik JIT) derleyicisini kullanabiliriz. Bu derleyici ile programın derlenmiş kısımları hafızada depolanmaz ve her seferinde aynı program parçası derlenir. Tabi ki bu derleyici normal JIT'e göre programlarımızı daha yavaş çalıştırır. Ama RAM 'imizi çok daha az kullanır.
CLR ile gelen üçüncü derleyicimiz PreJIT(ön JIT derleyicisi) ise derleme işini program çalışmadan önce yapar ve tüm makine kodlarını bir yerde saklar. Çalışma anında çok hızlı olan programımız diğer JIT derleyicileriyle derlenmiş olanlara nazaran çok hızlı çalışır.
Kolayca görebileceğimiz birkaç noktaya da parmak basmak istiyorum. .NET ile yazdığınız programlar diğerlerine göre yavaş çalışır. Çünkü iki defa derleme aşamasından geçerler, program kodu MSIL'ye, MSIL ise makine koduna çevrilir. Diğer taraftan .NET ile programlarımız platform bağımsız olacak, .NET uyumlu herhangi bir dil ile program geliştirebileceğiz ve programımız CLR altında daha güvenli bir şekilde çalışacaktır.
.NET perfromans testi
linkindeki sonuçlara göre : Genelde C# Java'dan 3.30 kat daha hızlı. C# Visual C++ 6.0'dan ise 3.11 kat daha hızlı çalışıyor. Hatta VB.NET kodu VB 6.0'a nazaran 46.45 kat daha hızlı çalışıyor. :-)
Makale:
.NET'in CLR, CTS ve JIT derleyicileri C#, Visual C# ve .NET Ahmet Faruk Nacaroğlu
Yazılan Yorumlar
Yorum Yaz
EYL
15
2005
mesut akşahin
/
üye hakkında
c# ile basit ama kullanışlı bir Evrak takip Sistemi geliştirdim ve data grid ler kullandım ancak uygulama ilk açıldığında bayağı bir yavaş.. bunun sebebi buymuş demek ki.. peki bu JIT derleyici ayarlarını değiştirirsek hızlanır mı acaba? (RAMim uygun) eğer hızlanırsa nasıl değiştirileceğini öğrenebilir miyim? makale harika olmuş.. bilgilerinizi paylaştığınız için teşekkürler..
ARA
26
2003
Adnan Korkmaz
/
üye hakkında
2 yıldır .Net ile çalışıyor olsam da nedense hala kendimi bile inandırabilmiş değilim hız olaylarına. Sanırım ölçümlerde bir gariplik var. Çünkü gerçekten gözle görülebilir bir fark var. Ama açıklananın tersine yönde. Aslında sitedeki ölçüm kriterlerine bakmak gerekir öncelikle ama şu anda gerçekten vaktim yok; hızlandırmam gereken bir miktar C# kodu var. ;) "Bakarsan bağ olur, bakmazsan bug olur..."
Sayfalar :
1
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için
tıklayın
.
Üye değilseniz
Üyel Ol
linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
Bu Konuda Son 10
Eklenen Son 10
Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor
Dizayn ve Kodlama
bt
akademi
. Tüm Hakları Saklıdır © Copyright 2002-2009 c#nedir?com
Makaleler
Serbest Köşe
Makale Gönder
.Net TV
Video Gönder
Canlı Köşe
Kaynak Kod
Forum
Haberler
Röportajlar
Anketler
C# Nedir?
İletişim
Site Haritası
RSS
Favorilere Ekle
Üyelik
Hesap Aktivasyon
Ekibimiz
Ekibe Katıl