Professional Documents
Culture Documents
2-
Sanal hafiza (virtual memory) işletim sisteminin bir hafıza yönetimi özelliğidir. İşletim
sisteminin fiziksel hafıza kısıtlamalarını gidermek için geçiçi olarak veriyi RAM’den disk
depolamaya aktarmasıdır.
Bilgisayarların kullanabildiği RAM kısıtlı ve pahalıdır. Bir çok program aynı anda
çalıştığında RAM yeterli gelmemektedir. Sistem sabit diskin bir bölümünü RAM olarak emule
edip sanal hafıza olarak kullanır.
İşletim sistemi sanal hafızayı fiziksel hafızaya kopyalarken hafızayı sabit adres
numaraları ile sayfa dosyalarına (pagefiles) veya takas dosyalarına (swap files) ayırır. Her bir
sayfa ihtiyac olunduğunda diskte depolanır, daha sonra işletim sistemi bunları diskten ana
hafızaya kopyalar ve sanal adresleri gerçek adreslere çevirir.
Sanal hafıza konsepti ilk olarak 1956 yılında Alman fizikçi Fritz-Rudolf Günstsch
tarafından doktora çalışmasının bir parçası olarak geliştirildi. Sanal hafıza başlangıçta ana
bilgisayarlarda kullanılırken, 1982 yılında Intel 80286 mikroişlemcilerde korumalı modda
kullanılarak ve 1985 yılında 80386 mikroişlemcilerde sayfalama desteği eklenerek kişisel
bilgisayarlarda da kullanılmaya başlandı.
Sanal hafızanın yönetiminin iki ana yöntemi bulunmaktadır Bunlardan biri sayfalama ile
(paged) diğeri segmentasyon ile (segmented) yapılır.
Genelde işletim sistemleri ne kadar sanal hafıza kullanacaklarını kendi belirlerler. Gerek
duyulursa ne kadar sanal hafıza kullanılacağı ayarlanabilir.
Sanal hafıza kullanımı mevcut RAM’den daha fazla alanın kullanılmasına imkan
sağlayarak hafıza kısıtlarına bir çözüm sağlarken, geçici veri depolanmasında sabit disk
kullanıldığından işlemlerde yavaşlama dezavantajı vardır.
Önbellek (Cache Memory) küçük, çok hızlı geçiçi hafıza depolama birimidir. Veri
transferinin ve program yönergelerinin hızlı çalışması için dizayn edilmiştir. Mikro işlemcinin
içine veya hemen yakınına konumlandırılır. RAM’ den daha hızlıdır, fakat daha az kapasitede
veri tutabilir.CPU tarafından en çok kullanılan yönergeler önbellek içinde tutulur. Veri ve
yönergeler ilk kullanımda RAM’den alınır daha sonrada bunların bir kopyası önbellekte tutulur.
Bunlara tekrar ihtiyaç olduğunda CPU ilk olarak önbellekte bunları arar. Aranan veri bulunursa
CPU ana bellek yerine önbellekten bu verileri alır.
Seviye 1 Önbellek (Level 1 [L1] Cache) : Birincil veya dahili önbellek olarak
adlandırılmaktadır. Direkt olarak işlemci çipine entegre edilir. Kapasitesi 8 KB ile 128 KB
aralığında , küçüktür.
Seviye 2 Önbellek (Level 2 [L2] Cache) : L1 önbellekten daha yavaştır. 64 KB ile 16 MB
aralığında daha yüksek kapasiteye sahiptir. Güncel işlemciler ileri transfer önbelleği içerir ki bu
bir çeşit L2 önbelleğidir. Bunların genel kapasitesi 512 KB ile 8 MB aralığındadır.
Mikroişlemciler x86 tabanlı olarak tarih sürecinde yerini alana kadar, Intel, Motorola,
MOS Teknoloji, Zilog Firması farklı mikroişlemciler geliştirmekteydi. Örnek olarak 8080
8-bitlik olarak dizayn edilmişti. Bir ana A yazmacı (accumulator, A register) ve 6 adet ikincil
yazmaç (B,C,D,E,H,L registers) içeriyordu. Bu 6 yazmaç 8-bitlik matematiksel işlemlerde
kullanılıyor veya (BC, DE, HL) biçiminde çiftler oluşturarak 16-bit hafıza adreslerini
tutuyorlardı. 16-bitlik adres sadece 64KB hazıya erişim demekti (2^16). Intel firması 8080
mikroişlemcisine 16-bitlik hafıza segmentasyonu eklentisi yaparak 1978 yılında yayınladığı
8086 mikroişlemcisi ile 16-bitlik mimariye geçiş yaptı. 8086 mikroişlemcisi x86 mimarisinin de
başlangıcı kabul edilir.
Intel firması 8086’ya geçişte bir komut setini geriye dönük olarak desteklemeyi
unuttuğundan 8080 için yazılan programlar 8086’da çalıştırılamadı. O günden bu yana
geliştirilen bütün mikroişlemciler geriye dönük komut setlerini çalıştırabilecek şekilde
geliştirmektedir.
1985 yılında 80386 mikroişlemcisi sahneye çıktı. Önceki mikroişlemcilerin pekçok eksik,
sorunları giderilmişti. 32 Bit adresleme kullanan, gerçek 32-bitlik bir işlemci idi. Ama geriye
dönük uyumluluk sağlanabilmesi için açılışta real mod ile başlamakta, 16-bit kaydediciler, 16-
bit segmentasyon şeması kullanmakta idi. Bu da 1 MB hafıza sınırlaması getirmekte idi. Diğer
yandan korumalı moda da geçiş yapabilmekte idi. Her segmentte bir bit segmenin 16-bit 80286
kodun mu yoksa 32 bit PM segmenti mi olacağını tutmaktaydı.
Veri Modeli:
Veri tabanı yönetim sistemlerinde veri modeli veri elemanlarını ve veri elemanlarının
birbirleriyle olan ilişkilerini belirler. Verinin veri tabanı yönetim sisteminde nasıl saklanacağını,
veriye nasıl bağlanılacağı, erişileceği ve güncelleneceğini gösterir. Verileri temsil etmede bir
takım sembol metinler kullanırlar. Günümüze kadar pek çok veri modeli geliştirilmiştir.
Bunlardan bazılarına aşağıda değinilecektir.
İlk geliştirilen veri modelidir. Verileri bir ağaç yapısı şeklinde organize eder. Hiyerarşik
yapı kök düğümden başlar ve çoçuk düğümlere doğru ağaç biçiminde dallanır. Bağzı gerçek
hayat modellerini çok güzel bir biçimde temsil eder.
Bu model hiyerarşik modelin geliştirilmesi ile yapılmıştır. Hiyerarşik model ile aynıdır,
tek fark bir kayıt birden fazla ebeveyne sahip olabilir. Hiyerarşik ağacın yerini grafik, diagram
almıştır.
Üst düzey veri model diagramıdır. Kolay anlaşılabilmesi için gerçek dünya problemleri
resimsel formda düzenlenir. Bu resimnsel biçimleme geliştiricilerin anlayabilmesini kolaylaştırır.
İlişki modelleri ilişki diyagramları biçiminde görsel araçlarla düzenlenebilir. İlişki diyagramları
varlık (entity), özellik (attributes) ve ilişki (relationship) şeklinde üç öğeden oluşur.
En çok kullanılan veri modelidir. Bu modelde veri iki boyutlu bir tablo biçiminde tutulur.
Tüm bilgiler satırlar ve sütunlar içerisinde saklanır. İlişkisel modelin temel yapısı tablolardır.
Bu modelde gerçek dünya problemleri daha iyi temsil edilebilir. Hem veri hem de ilişki
nesne adı verilen yapıda bir arada bulunur. İlişkisel modelde pratikte saklanılması önerilmeyen
ses, video ve görüntülerin depolanması mümkün olmaktadır. İki nesne ortak bir özellik üzerinden
birbirine bağlanır.
Bu model hem ilişkisel modelin hem de nesne yönelimli modelin bir kombinasyonudur.
İlişkisel model ile nesne yönelimli model arasındaki boşluğu doldurmak için yapılmıştır.
Mevcut veri türleri üzerinden daha karmaşık veri türleri yapılabilir. Böylece gelişmiş özellikler
barından bir veri tabanına sahip olunabilir. Karmaşıktır ve yönetilmesi zor bir modeldir.
Veritabanını satır ve sütunlardan oluşan bir tablo ile temsil eder. Bir veriye erişmek için
tüm tablonun taranması gerekmektedir. Yavaş ve verimsizdir.
Bu modelde veriler iki bölüme ayrılır. Tek başına var olabilen her bir şeye varlık (entity)
ve bunların birbiriyle olan ilişkilerine ilişkilendirme (association) denir. Veri madde (item) ve
bağlantı (link) olarak iki parçada gruplanır.
CentOS
CentOS ABD orijinli, Red Hat Linux temelli bir linux dağıtımıdır. Red Hat Linux’ un
CentOS grubu tarafından açık kaynaklı olarak yeniden derlenmiş halidir. Red Hat daha çok
şirketlerin kullanıma uygun, stabil, yüksek güvenlikli, uzun süre destek verilen sürümleri olan bir
Linux sürümüdür.
Masaüstü, canlı sürüm ve sunucu versiyonları vardır. Son sürümü CentOS 8 dir. Son
sürümünde x86_64, aarch64, ppc64le mimarilerini desteklemektedir.
Bu son sürümde Flatpak, RPM (dnf) paket yönetim sistemlerini kullanmaktadır.
Günlüklü dosya sisteminde xfs kullanmaktadır.
CentOS’da GNOME ve KDE masaüstleri ile kullanılabilinmektedir.
CentOS bir dağıtımına 7 yıl kadar destek vermektedir. Yeni bir sürüme geçmek
istenildiği zaman, kullanılmak istenen dosyalar yedek alınıp yeni bir kurulum yapılması tavsiye
edilmektedir.
Günümüzde halen aktif olan bir Linux dağıtımdır. Kullanım oranı olarak son bir yıl
verilerinde en çok kullanılan ilk 20 Linux dağıtımı içerisindedir.