Bellek (bilgisayar)
Eylül 5, 2011 | Bilgisayar Belleği
Bellek (bilgisayar)
Bellek bilgisayarı oluşturan 3 ana bileşenden biridir. (merkezi işlem birimi – bellek – giriş/çıkış aygıtları). İşlemcinin çalıştırdığı programlar ve programa ait bilgiler bellek üzerinde saklanır. Bellek geçici bir depolama alanıdır. Bellek üzerindeki bilgiler güç kesildiği anda kaybolurlar. Bu nedenle bilgisayarlarda programları daha uzun süreli ve kalıcı olarak saklamak için farklı birimler (sabit disk – CD – DVD) mevcuttur.
Belleğe genellikle random access memory (rastgele erişimli bellek) ifadesinin kısaltması olan RAM adı verilir. Bu ad bellekte bir konuma rastgele ve hızlı bir şekilde erişebildiğimiz için verilmiştir. RAMde sadece işlemcide çalışan program parçaları tutulur ve elektrik kesildiği anda RAMdeki bilgiler silinir. Bilgilerin kalıcı olarak saklandığı yer teker(disk)’dir. Bu iki kavram bilgisayarı kullanmaya yeni başlayan insanlar tarafından genellikle karıştırılır. Bu kavramları açıklamak için en güzel benzetme; bir dosya dolabı ve çalışma masası olan ofistir. Bu örnekte dosyaların kalıcı olarak saklandığı tekeri dosya dolabı, üzerinden çalışılan verilerin bulunduğu belleği ise çalışma masası temsil etmektedir. Bir ofiste dosyalar dosya dolapları içinde saklanır ve çalışanlar üzerinden çalışmak istedikleri dosyayı dolaptan alarak kendi çalışma masaları üzerinde çalışırlar. Bilgisayarda da işlemci üzerinde çalışacağı veriler tekerden belleğe getirilir. Dosya dolabınız ne kadar büyükse, o kadar çok dosyayı saklayabilirsiniz ve masanız ne kadar büyükse aynı anda o kadar çok dosyayı masaya alıp üzerinde çalışabilirsiniz. Bilgisayar ortamında da işler tam olarak böyledir. Teker kapasitesi ne kadar büyükse o kadar çok veri saklayabiliri ve bellek kapasitesi ne kadar büyükse işlemci o kadar çok dosya üzerinde çalışabilir. Bu benzetmenin bilgisayarın çalışma şeklinden farkıysa belleğe getirilen dosyaların tekerdeki dosyaların bir kopyası olmasıdır. Gerçek dosyalar tekerde saklanmaya devam eder. Bunun sebebiyse belleğin güç kesildi anda verileri kaybetmesidir. Eğer bellekteki dosya değiştirilirse değişiklerin kaybolmaması için teker üzerinde değişikliklerin kaydedilmesi gerekir.
Geçmişten Günümüze Bellekler
İlk bilgisayarlarda bellek yoktu. Onun yerine süngü ve röle ile katot lambaları kullanılmakta idi. Yazılımlar ve veriler tamamen diğer medyalara geçirilmekte idiler. Teleteks şeritleri veya delikli kartlar gibi. İlk dijital bilgisayarlarda röleler bellek için kullanılmış. Daha sonra katot lambaları yanında yüzük şeklinde olan manyetik demir (ferrit) çekirdekler kullanılmış. Teker düzeninde tellere geçirilen bu demir yüzükler akımı aldığında mıknatıslaşmakta ve bu durumu kaybetmemekte idiler. Ama her okuma sürecinde hafıza bilgisini kaybetmekte idiler. Yapısal özelliği nedeni ile büyük mekanlara ihtiyaç vardı. Tipik bir büyük bilgisayar olan Telefunken TR440′nın 1970 senesinde belleği 48bit lik 192.000 kelime yani bir Megabyte’a eşit idi.
1985′te satın alınan bir PC (Commodore PC10) de 64 KByte belleğe sahip iken 1990 da alınan bir PC de 1 MB’ye belleği bulunabiliyordu. 2005 de ise bu 512 Megabyte veya daha çok olabilir. Günümüzün PC lerinde kullanılan işletim sistemleri (Windows, Linux, BeOs vs) bellek canavarları olup, yukarıya doğru sınır tanımamaktadırlar (tabii bu sınır var olup şu an pratik olarak ulaşılamamakta). Anakartlarda bulunan Chipset (yonga) tipine göre üst sınır olup bunların açıklamaları üreticinin İnternet sayfasında veya kılavuzunda bulunmaktadır.
Transistörün bulunuşu ile birlikte büyük atılımlar olmuş. Bugün tümleşik devre imkânları ile en modern bilgisayar sistemleri donatılmaktadır.
Günümüzde amaç büyük, ucuz ve hızlı bellek üretmektir. Ama hayatın gerçeği şudur ki; bellek büyüdükçe yavaşlar, hızlandıkça da küçülür. Bu sorunu aşıp büyük, hızlı ve ucuz bellek tasarlamak için aşamalı bellek yapısı ve koşutluk (paralellik) kullanılmaktadır.
Aşamalı Bellek Yapısı
Bellekler, aşamaları kullanılarak, en ucuz teknolojinin sağlayabileceği boyutla en pahalı teknolojinin sağlayabileceği hız sunulmaya çalışılmaktadır. Yazmaçlar işlemcinin içindedir ve işlemci yazmaçlara doğrudan erişebilir. Yazmaçlara erişim için geçen süre bir nano saniyenin altındadır. Yazmaçlarda sadece birkaç bitlik veri tutulabilir. Bir GB veri saklayabilecek yazmaçlar üretmek için milyonlarca dolar harcamak gerekir. Birinci düzey önbellek birkaç kilobaytlık veri tutabilir ve erişim süresi birkaç nano-saniyedir. Erişim süresi ikinci düzey önbellekte birkaç on nano-saniyeye, ana bellekte de yüzlerce nano-saniyeye çıkar.
Bu yapıda yazmaçlar ve bellek arası iletişim derleyiciler; önbellek ve bellek arasındaki iletişim donanım; bellek ve teker arasındaki iletişim de işletim sistemi, donanım ve kullanıcı tarafından yönetilir. [1]
Bilgisayar Bellekleri
Her geçen gün bilgisayarınız, daha fazla belleğe ihtiyaç duyuyor. 6-7 sene önceye kadar bir kişisel bilgisayarda 1 ya da 2 megabayttan fazla belleğe pek rastlanmazdı. Ancak günümüzde, bir sistemi yükleyebilmek için en az 4 megabayt ve birden fazla uygulamayı çalıştırmak için ise en az 8 megabayt belleğe ihtiyacınız var.
Ancak bu, kullanılan işletim sistemine göre değişimler gösteriyor. Örneğin Windows 95 gibi bir işletim sisteminin normal çalışması için en az 16 megabayt belleğe ihtiyaç duyarsınız. Tabii sistemin ideal bir performans göstermesini istiyorsanız 24 megabayt belleğe ihtiyacınız olacaktır.
Bilgisayar sektöründekiler, genel olarak belleği tanımlamak için RAM (Random Access Memory) terimini kullanırlar. Bilgisayarınız, RAM’i geçici komut ve verileri depolayacağı yer olarak kullanır. Bu şekilde bilgisayarınızın merkezi işlem birimi, bellekte bulunan bu komut ve verilere daha hızlı şekilde ulaşır.
Örneğin klavyeden bir komut girdiğiniz zaman, veriler, depolama biriminden (sabit disk sürücünüz veya CD-ROM sürücünüz gibi) belleğe kopyalanır. Bu şekilde bilgisayarınızın işlemcisinde daha hızlı veri aktarımı olur. Komut ve verileri, işlemcinin kolayca erişebileceği yere koymak, sizin ihtiyaç duyduğunuz dosyaları el altında bulundurmak için belli bir klasörde tutmanıza benzetilebilir.
Kullanacağınız bellek miktarı, yaptığınız çalışma ve uygulama türüne göre değişir. Basit uygulamalardan, grafik ve çoklu ortam uygulamalarına göre bilgisayarınızın bellek ihtiyacı artacaktır. Eğer bilgisayarınız yetersiz belleğe sahipse, uygulamalarınızı çalıştırmakta zorlanacaksınız. Kimi uygulamalarınız ya çok yavaş çalışacak ya da bilgisayarınız belli bir uygulamayı çalıştırmak için sizden, açmış olduğunuz diğer uygulamaları kapatmanızı isteyecektir. Ancak yeterli belleğe sahipseniz, birçok uygulamayı aynı anda çalıştırabileceksiniz.
Bilgisayarınızın belleği, DRAM (Dynamic Random Access Memory) denilen tümleşik devrelerden oluşuyor. Bellek modüllerinde kullanılan DRAM’lerin kalitesi, modüllerin güvenilirliği ve kalitesinin başlıca göstergesidir.
En bilinen bellek modülü SIMM’lerdir (Single In-line Memory Module). SIMM’ler, DRAM’lerden oluşur. Baskılı devre denilen bu küçük devre kartları da sistem kartındaki SIMM soketi denilen yuvalara yerleştirilirler. SIMM’ler genellikle 30 ve 72 bacak formatındadır.
Eskiden bu modüller, işlemciyle doğrudan iletişimde olması için anakarta lehimliydiler. Ancak zamanla bellek ihtiyacı artınca, kolayca takılıp çıkartılması için bu SIMM yuvaları geliştirildi. Bu yuvalar sayesinde, bellek artırımına gittiğinizde, büyük kolaylık elde etmiş oluyorsunuz. Üstelik, anakartınızda ekleyeceğiniz belleklerin fazla yer kaplamasını da önlemiş oluyorsunuz.
Bilgisayarınızdaki anakartlarda bellekler, bellek sırası (memory bank) şeklinde düzenlenirler. Bellek sıralarının sayısı ve kendine özgü ayarları, bir bilgisayardan diğerine göre değişim gösterir. Bu değişim, bilgisayarın işlemcisine ve bunun bilgiyi nasıl aldığına dayanıyor. İşlemcinin ihtiyaçları, bir sırada bulunan gerekli bellek yuva sayısını da belirliyor.
Belleklerin Çalışma Şekli
Bilgisayarın işlemcisi, verileri 8 bitlik parçalar şeklinde işliyor. Bu 8 bitlik parçalara, bayt ismini veriyoruz. İşlemcinin işleme gücü, belli bir zamanda işlediği bayt miktarına göre tanımlanıyor. Örneğin, en güçlü Pentium ve PowerPC mikroişlemcileri bir kerede 64 bit ya da 8 bayt işleyebiliyor.
İşlemci ve bellek arasındaki bu alışverişe (transaction) veriyolu döngüsü (bus cycle) diyoruz. İşlemcinin tek bir döngüde ilettiği veri bit sayısı, bilgisayarın performansını ve nasıl bir bellek gerektirdiğini gösterir. Çoğu masaüstü bilgisayarları genelde 72 veya 30 bacaklı SIMM’ler kullanır. 30 bacaklı SIMM’ler 8 veri biti, 72 bacaklılar ise 32 veri bitini destekler.
30 Bacaklı SIMM’ler
Eğer bilgisayarınızın anakartı 30 bacaklı SIMM yuvaları bulunduruyorsa, her biri 8 veri bitinden, 32 biti desteklemesi için tam 4 tane 30 bacaklı yuvaya ihtiyacınız vardır. Bu tip sistemlerde bellek konfigürasyonu, iki bellek sırasına bölünmüştür: “0. Sıra” ve “1. Sıra”. Her bir bellek sırası, 4 tane 30 bacaklı SIMM yuvasından oluşuyor. İşlemci, belleği her seferinde bir tek sıraya adresliyor.
Değişik model veya değişik kapasitelerdeki SIMM’in aynı sırada kullanılması, bilgisayarınızın doğru bir şekilde bellek miktarını saptamasını önler. Bu da, ya bilgisayarınızın açılması sırasında, ya yüklenmemesine ya da yüklenme olduğu halde sıradaki belleği tanımaması ya da kullanamamasına neden olur. Eğer 1 megabayt SIMM ve 4 megabayt SIMM kullanıyorsanız, bilgisayarınız bunları 1 megabayt SIMM olarak tanır.
72 bacaklı SIMM’ler
Tek bir 72 bacaklı SIMM, 32 veri bitini, yani 30 bacaklı SIMM’lerin 4 katını destekliyor. Eğer 32 bitlik bir işlemci kullanıyorsanız, sıra başına tek bir 72 bacaklı SIMM kullanmanız yeterli. Oysa 30 bacaklı SIMM’lerden 4 tane kullanmanız gerekiyordu.
DIMM Bellek
DIMM (Dual In-line Memory Modules) bellekler, SIMM’lere çok benzerler. DIMM bellekler, SIMM bellekler gibi genişleme yuvalarına dikey olarak takılırlar. Aralarındaki temel fark, SIMM’lerde karşılıklı bacaklar, tek bir elektrik yüzeyi oluşturacak şekilde birbirlerine bağlıyken, DIMM’lerde iki ayrı temas yüzeyi oluşturacak şekilde yalıtılmıştır.
DIMM’ler genel olarak, 64 bit ya da daha geniş bellek veri yolunu destekleyen bilgisayarlar tarafından kullanılır. Birçok durumda bu bilgisayarlar, Intel’in Pentium’u ve IBM’in PowerPC işlemcilerinin güçlü 64 bitlik işlemcilerinde tercih edilir. Bunlarda artık 168 bacaklı DIMM’lerde kullanılıyor.
Bellek tasarımında önem verilen bir konu da, bellekte saklanan verinin bütünlüğünün sağlanması. Şu anda bunun iki yolu var: Günümüzde çokça kullanılan Parite. Bu işlem her 8 veri bitinin (1 bayt) üstüne 1 bit daha ekliyor. Ancak parite yönetiminde de birtakım sınırlamalar var. Örneğin, parite devresi hatayı saptayabilir ancak düzeltme yapamaz. Bu, devrenin, 8 veri bitinin hangisinde hata olduğunu bulamamasından kaynaklanır.
Bunun dışında kimi üreticiler, üretimi ucuza getirmek için “fake parite” yongaları kullanır. Bu parite kontrolü oluyor diye bilgisayarınızı kandırır. Burada sinyal ne olursa olsun, fake parite yongası her zaman “OK” gönderir. Sonuç olarak bunlar yanlış veri bitlerini saptayamazlar.
Hata Kontrol Kodu olan ECC (Error Correction Code), veri bütünlüğü kontrolünde daha anlaşılır bir yöntem. Bu, bir bitlik hataları saptayıp düzeltebiliyor.
Bellek idarecisi (memory controller), bilgisayarınızın önemli bir parçasıdır. Görevi, belleğe giren ya da çıkan verinin hareketini kontrol etmektir. Bellek idarecisi, parite ve ECC gibi yöntemlerle işlemde önemli bir rol oynar.
Eğer bilgisayar alacaksanız ve bu bilgisayarı sunumcu olarak kullanacaksanız, o halde ECC’li bir bellek idarecisi olan bir bilgisayar almanız doğru bir karar olacaktır. Günümüzde sunumcu olarak tasarlanmış birçok bilgisayar, ECC desteği veriyor.
Kullanılan masaüstü bilgisayarları da parite destekleyecek şekilde tasarlanmıştır. Bunlar bellek idarecisinin tipine göre nadir olarak 2, 3 ya da 4 bitlik hataları da saptayabiliyor. Ancak bir bitten fazla olan hataları saptasa da, sadece tek bitlik hataları düzeltebiliyor. Evde veya küçük işletmelerde kullanılan düşük fiyatlı bilgisayarlar ise paritesiz bellek için tasarlanmıştır.
DRAM
Üç çeşit DRAM var: DIP (Dual In-line Package), SOJ (Small Outline J-lead) ve TSOP (Thin, Small Outline Package). Bunların her biri özel uygulama türlerine göre tasarlanmıştır.
DIP’ler, ilk başlarda doğrudan sistem kartlarının üzerine yerleştiriliyordu. Bunlar “delik içi” (through-hole) parçalarıdır. Yani bunlar devre kartının üzerindeki deliklere yerleştirilirler. Bunlar ya lehimlenir ya da soketlere yerleştirilirler. SOJ ve TSOP paketleri ise devre kartlarının yüzeyine yerleştirilirler. SOJ’lar diğerlerine göre daha yaygın kullanılır.
EDO Bellek
EDO (Extended Data Output) RAM’ler, bilgisayar işlemcisinin belleğe ulaşmasında, diğer “fast-page mode” yongalara göre %10-15 daha hızlıdır. Bunlardaki tek sorun, bu belleklerin 66 MHz’den daha hızlı çalışan veriyollarını desteklemiyor olması.
SDRAM Bellek
SDRAM’ler (Synchronous DRAM) ise giriş ve çıkış sinyallerinin eş zamanlamasını sağlayan bir saate sahip yeni bir DRAM teknolojisi. SDRAM saati, işlemci saati ile eş zamanlı olarak bir arada çalışıyor. SDRAM’ler komutların yerine getirilmesi ve verilerin iletilmesinde zaman kazandırıyor. Bu da, bilgisayarın genel performansını artırıyor.
Önbellek
Önbellekler, işlemci tarafından bellek işlemlerinin hızlandırması için tasarlanmış özel yüksek hızlı belleklerdir. İşlemci, önbellekte bulunan komut ve verilere, anabellekte bulunan komut ve verilere göre çok daha hızlı bir şekilde ulaşabilir. Örneğin, 100 MHz’lik sistem kartlarında, işlemcinin anabellekten bilgi alması, 180 nanosaniye (saniyenin 109’da biri) alırken, bunu önbellekten alması sadece 45 nanosaniye alıyor.
Buna göre, işlemci ne kadar çok komut ve veriye önbellekten ulaşırsa, bilgisayarınız da o kadar hızlı çalışır. Önbellekler, birincil önbellek (Level 1, L1) ve ikincil önbellek (Level 2, L2) olarak ayrılırlar. Bunun dışında bunlar dahili ve harici olarak da sınıflandırılırlar. Dahili önbellekler, işlemcinin içindedir. Harici önbellekler ise işlemcinin dışındadır.öBirincil önbellek, işlemciye yakın olandır. Genellikle birincil önbellekler, işlemcinin içinde, ikincil önbellek ise dışındadır.
Önbellek idarecisi (cache memory controller), önbellek sisteminin beyni olarak görülebilir. Önbellek idarecisi, ana bellekten bir bilgi alırken aynı zamanda önbelleğe bir sonraki komutları verir. Bunun nedeni, yapılan işe yakınlığı olan bu komutlara ihtiyaç duyulması. Bu şekilde işlemci, önbellekte gereksinim duyduğu komutlara daha hızlı bir şekilde ulaşma şansını artırıyor. Bu da, bilgisayarın daha hızlı çalışmasına imkân tanıyor. [2]
Kaynaklar:
[1]- http://tr.wikipedia.org/wiki/Bellek_(bilgisayar)
[2]- http://www.mtuncel.com/bilgisayarbellekleri.htm
Popularity: 8% [?]




