SlideShare a Scribd company logo
1 of 14
Download to read offline
ÖZET
Bellek Yöne-mi, Proses-Thread, Fifo, Round-
Robin,
Şahabe?n Akca - 132132178
Ahmet Yesevi Üniversitesi – Bilg. Müh. Lisans
ÖDEV
İşle-m Sistemleri
CEVAPLAR
1. Soru
Linux Bellek Yöne-mi:
❖ Sayfa (page) adı verilen, mimari ve bellek boyuna göre 4-64 KB boyunda birimler bazında kullanılır
.
❖ MMU (memory management unit) adlı işlemci birimi yardımıyla oluşturulan sanal adresleme ile:
▪ Varolandan daha büyük bir bellek alanı kullanılabilir.
▪ Belleğe sığandan daha fazla uygulama çalışerılabilir.
▪ Her uygulamanın kendine ait bir sanal adres alanı olur
❖ Uygulamanın erişmek istediği sanal adres gerçek bellekte yoksa :
▪ İşlemci bir sayfa hatası (page fault) verir.
▪ İşle-m sistemi kontrolü alır, gerekirse bellekte boş yer açıp, istenen sayfayı takas alanında
n yükler.
▪ Uygulama kaldığı yerden devam eder
❖ Gerçek bellek dolmaya başladığında işle-m sistemi az erişilen sayfaları takas alanına taşır.
❖ Sayfa hataları büyük yavaşlamaya neden olduğundan, en aza indirgenmeye çalışılır.
Linux, disk yüzeyini RAM belleğin bir uzanesıymış gibi kullanan ve böylelikle fiziksel belleğin
görünürdeki miktarını ariran sanal bellek desteğine sahip-r. Çekirdek bellekteki kullanılmayan
bloklarda bulunan bilgileri, disk yüzeyine yazar ve bellek başka işler için serbest kalmış olur. Bu
bölümler gerek-ği zaman bunlar belleğe tekrar alınırlar. Bu olaylar kullanıcıdan bağımsız bir şekilde
gerçekleşir. Linux alenda çalışan programlar geniş bir bellek alanı görürken, aslında bazı bilgilerin
hemen yanı başlarında olduğundan habersizlerdir. Elbeke ki sanal bellek kullanımı RAM kullanımı
kadar hızlı değildir, bu nedenle program hızlarında düşüş yaşanır. Sabit disk üzerinde sanal bellek için
kullanılan bölüme takas alanı denir.
Aşağıdaki komutla içinde oyuklar olmayan bir takas dosyası oluşturabilirsiniz:
# dd if=/dev/zero of=/ek-takas bs=1024 count=1024
1024+0 records in
1024+0 records out
# mkswap /ek-takas 1024
Takas alanı sürüm 1, uzunluk = 1044480 bayt olarak ayarlanıyor
Bazı kaynaklarda, sahip olunan RAM miktarının iki kae kadar bir takas alanı ayırmanız
belir-lebilir. Bu tamamen geçersiz bir kuraldır. Bunun doğru bir şekilde nasıl yapılacağı aşağıda
listelenmiş-r.
1. Yaklaşık bellek ihtiyacınızı belirleyin. Bu genellikle bir seferde çalıştıracağınız
programların ihtiyaç duyacağı toplam RAM miktarıdır. Yani bir seferde en fazla ne
kadar belleğe ihtiyacınız olduğunu bulun. Bunu aynı anda çalıştırmak istediğiniz
programları çalıştırarak öğrenebilirsiniz.
Aklınızdan çıkarmayın ki; sistemde birden fazla kullanıcı aynı anda yer
alacaksa, hepsi ayrı ayrı bellek tüketeceklerdir. Bununla beraber, iki kişi aynı anda
aynı programı kullanıyorsa; aynı veri ve kütüphaneleri kullanıyor olacaklarından
bellek tüketimi iki kat olmayacaktır.
2. Bellek ihtiyaçlarını değerlendirmek için free ve ps komutları oldukça uygundur.
3. Birinci adımda anlatılan değerlendirmeler için bir parça yanılma payı ekleyin. Büyük
ihtimalle kullanmak istediğiniz bazı programları bu hesaplama sırasında
unutabilirsiniz, bazılarının gereksinimlerini yanlış hesaplayabilirsiniz veya ileride
daha fazla alan ihtiyacı duyabilirsiniz. Birkaç MB disk alanını fazladan ayırmak her
zaman iyi olur. Çok küçük bir takas alanı yapmaktansa, biraz büyük bir alan yaratmak
her zaman daha iyidir. Ama bunu da fazla abartıp bütün diski takas alanı olarak
ayırmayın. Unutmayın ki kullanılmayan alan boşa gitmiş sayılır. Daha sonradan da
takas alanına ekleme yapılabileceğini göz önünde bulundurun. Tam sayılarla uğraşmak
daha kolay olacağından ihtiyaç duyulan alan hesaplamasını yuvarlayabilir, bir MB
büyük alabilirsiniz.
4. Yukarıdaki karşılaştırmalar ve hesaplamalar sonucu şu an ne kadarlık bir belleğe
ihtiyaç duyabileceğinizi biliyor olmalısınız. Yerleştireceğiniz takas alanını hesaplamak
için, toplam ihtiyaç duyulan alandan fiziksel belleği çıkarın. Kalan sonuç takas
alanının boyutunu belirtir. Bazı Unix sürümlerinde bu alanı RAM'in bir yansıması gibi
yerleştirmeniz gerekeceğinden, ikinci basamakta hesaplanan alan sizin ihtiyacınızı
gösterecek ve çıkartma işlemine gerek kalmayacaktır.
5. Şayet hesaplarınız sonucu ortaya çıkan takas alanı, fiziksel belleğinizin bir kaç
katıysa, yeni bir RAM eklemenin zamanı gelmiş demektir. Aksi taktirde performansta
çok büyük bir düşüş yaşayabilirsiniz.
Hiç ih-yacınız olmasa bile bir parça takas alanına sahip olmak iyi olur. Linux, takas alanını oldukça
tasarruflu bir biçimde kullanır ve bu size mümkün mertebe boş bir fiziksel bellek sağlar. Takas ih-yacı
olmasa bile, Linux kullanılmayan bellek sayfalarını takas alanına gönderir. Bu sayede, disk pasif halde
iken takas yapılarak takasa ih-yaç duyulduğu anlarda bekleme yapılması önlenir.
Windows Bellek Yöne-mi:
Windows geleneksel olarak aşağıda sıraladığım bellek yönetim methodlarını kullanmaktadır.
Hepsinin kullanım amaçlarına göre avantaj ve dezavantajları vardır. Bazısı büyük belleğe ihtiyaç
duyabilir, bazısının algoritmasının işletilmesi, program akışı sırasında yavaşlamalara ve hatalara
sebep olabilir. 

Bu geleneksel yaklaşımların yanı sıra; Windows Vista ile 2007’li yıllarda Readyboost denen
Linux’un swap alanına benzeyen bir yöntem denemiş bu alan için Flash Disk denen bellekleri
kullanarak bilgisayara ram takviyesi yapmaya yarayan yöntemleri de yeni İşletim sistemlerine entegre
etmiştir.
►Bölmeleme (Partitioning) : Boş bölmeye, boyu bölme boyundan küçük ya da
eşit prosesler yüklenebilir. Tüm bölmeler doluysa proseslerden biri bellekten atılır
– Sabit : her program ne kadar boyu küçük de olsa tam bir bölmeyi elinde tutar ⇒ iç
parçalanma (internal fragmentation), Maksimum aktif proses sayısı sınırlıdır, İşletim sistemi
tarafından gerçeklenmesi kolay
– Dinamik : Bölme sayısı ve bölme boyları sabit değil. Proseslere sadece gerektiği
kadar bellek atanır. Hangi boş bloğun hangi proses atanacağına işletim sistemi karar verir. En-
İyi-Sığan Algoritması (Best-Fit) – Boyu istenene en yakın olan boşluk seçilir. Olası en küçük
bölme bulunduğundan artan boş alan daha az kalır. Alternatif olarak İlk-Sığan Algoritması
(First-fit) işletim sistemi daha hızlı çalışacaktır.
►Basit sayfalama (Paging) : Belleği küçük, eşit boylu parçalara böl. Prosesleri de
aynı boyda parçalara ayır. .Eşit boylu proses parçaları: sayfa .Eşit boylu bellek parçaları:
çerçeve .İşletim sistemi her proses için sayfa tablosu tutar – prosesin her sayfasının hangi
çerçevede olduğu – bellek adresi = sayfa numarası ve sayfa içi ofset adresi .İşletim sistemi
hangi çerçevelerin boş olduğunu tutar
►Basit segmanlama (Segmentation): Program segmanlara ayrılır. Tüm
programların tüm segmanları aynı boyda olmak zorunda değil. Segman boyunun üst sınırı
var .Mantıksal adresler iki bölümden oluşur -segman numarası ve segman içi ofset – segman
tablosundan segmanın adresi ve boyu alınır .Segman boyları eşit olmadığından dinamik
bölmelemeye benzer .Bir program birden fazla segmandan oluşabilir
►Sayfalamalı görüntü bellek (Virtual Memory)
►Segmanlamalı görüntü bellek: Program segmanlara ayrılır. Tüm programların
tüm segmanları aynı boyda olmak zorunda değil. Segman boyunun üst sınırı var .Mantıksal
adresler iki bölümden oluşur , segman numarası ve segman içi ofset , segman tablosundan
segmanın adresi ve boyu alınır .Segman boyları eşit olmadığından dinamik bölmelemeye
benzer .Bir program birden fazla segmandan oluşabilir
Windows ve Linux İşle-m Sistemleri Bellek Yöne-mi Karşılaşerılması:
2. Soru
Ölümcül Kilitlenme, bekleme durumundaki görevlerin, hazır görev durumuna
geçebilmek için bir diğerinin sağlayacağı koşulu karşılıklı beklemelerine verilen addır.
Görevlerin her birinin bekler olması ve çalışabilmek için bir diğerinin işletilmesinin
gerekmesi durumu, görevlerin hiçbir zaman gerçekleşmeyecek bir koşulu beklemeleri
sonucunu doğurur. Birden fazla proses olması durumunda proseslerin bir kaynağı ellerinde
tutmaları ve bir başka kaynağı istemeleri durumunda ölümcül kilitlenme meydana gelir.
Algoritmalar:
1-) P n+1 prosesini ancak ve ancak aşağıdaki koşul gerçeklendiğinde başlat:
Tüm i’ler için ;
Optimal değil. Tüm proseslerin maksimum kaynak gereksinimlerini birden
isteyeceğini varsayar.
2-) Banker algoritması : Bu algoritmanın çözdüğü sorun, değişmez bir sermayeye
sahip olup bunu müşterileri arasında bölüştüren bir bankerin iflas etmeden
herkese para sağlaması olarak tanımlanır.
– Sistemde sabit sayıda proses ve kaynak vardır
– Sistemin durumu: Kaynakların proseslere o anki ataması ⇒ durum Kaynak ve Boş
vektörlerinden ve Atanmış ve İstek matrislerinden oluşur.
Windows NT ve türevleri, bellek yöne-mi için bir
dinamik olarak tahsis edilen disk belleği dosyası
kullanırlar. Ak-f olarak kullanılan nesnelere daha fazla
RAM bırakarak bir disk belleği dosyası, bellekte daha az
sıklıkla erişilen nesneler için, disk üzerinde tahsis edilir.
Bu düzen, disk parçalanması, nesnelere ih-yaç
duyulduğunda belleğe geri ge-rilebilir, sabit disk
depolama alanından ge-rilmesi nedeniyle yavaş işlemler
dezavantaj sebebidir.
Ayrı bir bölüm Windows disk belleği dosyası
yerleş-rmek için yapılandırılabilir; Bunu yaparken disk
parçalanması sorunlarını olumsuz etkiler. Ancak; iki
bölüm arasında ileri ve geri geçiş yer alan arama süresi
nedeniyle bir I / O yavaşlama oluşabilir. Ancak, bu
varsayılan yapmadı ana nedeni, disk belleği dosyası ayrı
bir bölüm ise, sonra Windows Dur Hatası ( Mavi ekran )
olay bir bellek dökümü oluşturamazsınız. Performans
açısından ideal bir çözüm, ayrı bir sabit disk birleş-rme
ve I / O sorunları ortadan kaldıran birincil, disk belleği
dosyası var.
Linux sabit disk kurulumları
sayfalama için ayrılan disk alanı,
genel veriler ayrı ve sayfalama
işlemleri için kesinlikle bir "takas
bölümü" kullanmaktadır. 

Bu, genel kullanım disk
parçalanması nedeniyle
yavaşlamayı azaler. 



Windows ile birlikte kullanımda
en iyi performans için, takas
bölümü ve birincil disk ayrı bir
sabit disk üzerine yerleş-rilmiş
olmalıdır.
– Emin durum: Ölümcül kilitlenmeye yol açmayacak en az bir atama sekansı olduğu
durum (yani tüm proseslerin sonlanabileceği durum)
– Bir proses bir grup kaynak için istekte bulunduğunda işle-m sistemi,
1. Kaynakların atandığını varsayarak sistem durumunu günceller.
2. Yeni durum emin bir durum mu diye kontrol eder.
3. Emin ise atamayı gerçekleş-rir. – Emin değilse atamayı yapmaz ve istekte bulunan
prosesi isteklerin karşılanması uygun olana kadar bloke eder.
3. Soru
#define _POSIX_SOURCE
#include <sys⁄times.h>
#include <time.h>
#include <sys⁄types.h>
#include <sys⁄wait.h>
#include <stdio.h>
#include <unistd.h>
main() {
int status;
long i, j;
struct tms t;
clock_t dub;
int tics_per_second;
tics_per_second = sysconf(_SC_CLK_TCK);
if (fork() == 0) {
for (i=0, j=0; i<1000000; i++)
j += i;
exit(0);
}
if (wait(&status) == -1)
perror("hata: wait()");
else if (!WIFEXITED(status))
puts("cocuk cikis hatasi");
else if ((dub = times(&t)) == -1)
perror("hata: times()");
else {
printf("process %f saniye once calistirildi.nn", ((double)
dub)⁄tics_per_second);
printf(" kullanici sistemn");
printf("anne: %f %fn", ((double)
t.tms_utime)⁄tics_per_second, ((double) t.tms_stime)⁄tics_per_second);
printf("cocuk: %f %fn", ((double)
t.tms_cutime)⁄tics_per_second, ((double) t.tms_cstime)⁄tics_per_second);
}
}
4. Soru
Tablolar Hakkinda
T: Sure, P: Proses’leri sembolize etmektedir.. Tablonun P satirinda o an isletilen prosesler
renklendirilmistir. Kuyruktaki isler ise dikey olarak renklendirilmistir. Alt alta 2 kirmizi ve 3 yesil
renk varsa bu kuyrukta isletilecek 2 birim islik P1 prosesi ve 3 birim işlik. P3 prosesi olduğunu
göstermektedir.. Kuyruktaki kalan isler de T surelerine denk gelen dikey dogrultudan
gorulebilir.
First In First Out : İlk Giren İlk Çıkar, önce gelen işler tamamlanıyor, yeni
gelen işler ise kuyruğa ekleniyor.


Ortalama bekleme suresi : (0 + 3 + 4 + 9 + 10) / 5 = 5,2

Proses Gelis Ani Hizmet Suresi Renk
P1 0 4
P2 2 3
P3 4 6
P4 5 3
P5 7 4
T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
P P1 P2 P3 P4 P5
Kuyruktaki Isler


Shortest Remaining Time First
Ortalama bekleme suresi : (0 + 3 + 11 + 3 + 4) / 5 = 4,2
T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
P P1 P2 P4 P5 P3
Kuyruktaki Isler
Round Robin:
Bir zamanlama (scheduling) algoritmasıdır. Özellikle işle-m sistemi tasarımında işlemcinin
(CPU) zamanlamasında kullanılan meşhur algoritmalardan birisidir. Bu algoritmaya göre sırası
gelen işlem, işlemcide işi bitmese bile belirli bir zaman biriminden sonra (-me quadrant)
işlemciyi terk etmek zorundadır.
Bu sayed işle-m sisteminde kıtlık (Starva-on) olma ih-mali kalmaz. Çünkü hiç bir zaman bir
işlemin CPU’yu alıp diğer işlemlere sıra gelmesini engellemesi mümkün olmaz.
Time Quantum : 2
Ortalama bekleme suresi : (9 + 10 + 11 + 9 + 8) / 5 = 9,4
T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
P P1
Kuyruktaki Isler
Multi Level
Bu ornek icin 3 kuyruklu bir sistem dusunulmustur. 1. ve 2. kuyruklar round robin
algoritmasiyla, son kuyruk FIFO algoritmasiyla calismaktadir. 1. kuyrugun zaman suresi
(Time Quantum) 2 olarak, 2. kuyrugunki ise 3 olarak belirlenmistir. Kuyruklarin oncelik sirasi
1 > 2 > 3’tur ve ust oncelikteki kuyruk bosalmadan bir alt kuyruktaki islere gecilmemektedir.
Asagidaki her tablo zamana gore proseslerin islenmesini ve kuyruktaki proseslerin durumunu
gostermektedir. Proseslerin yanindaki parantez icindeki sayilar kalan is sayisini
gostermektedir.
ZAMAN: 0
CPU
FIFO
Q=3
Q1 P1(4) ->
CPUQ2 ->
Q3 ->
Son Islenen Proses : Yok Sonraki Zamanda Islenecek Proses : P1
ZAMAN: 2
Q1 P2(3) ->
CPUQ2 P1(2) ->
Q3 ->
Son Islenen Proses : P1 Sonraki Zamanda Islenecek Proses : P2
ZAMAN: 4
Q1 P3(6) ->
CPUQ2 P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P2 Sonraki Zamanda Islenecek Proses : P3
ZAMAN: 5
Q1 P4(3), P3(5) ->
CPUQ2 P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P3
ZAMAN: 6
Q1 P4(3) ->
CPUQ2 P3(4), P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P4
ZAMAN: 7
Q1 P5(4), P4(2) ->
CPUQ2 P3(4), P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P4
ZAMAN: 8
Q1 P5(4) ->
CPUQ2 P4(1), P3(4), P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P5
ZAMAN: 10
Q1 ->
CPUQ2 P5(2), P4(1), P3(4), P2(1), P1(2) ->
Q3 ->
Son Islenen Proses : P5 Sonraki Zamanda Islenecek Proses : P1
ZAMAN: 12
Q1 ->
CPUQ2 P5(2), P4(1), P3(4), P2(1) ->
Q3 ->
Son Islenen Proses : P1 Sonraki Zamanda Islenecek Proses : P2
ZAMAN: 13
Q1 ->
CPUQ2 P5(2), P4(1), P3(4) ->
Q3 ->
Son Islenen Proses : P2 Sonraki Zamanda Islenecek Proses : P3
Ortalama bekleme suresi : (8 + 8 + 8 + 4 + 8) / 5 = 7,2
ZAMAN: 16
Q1 ->
CPUQ2 P5(2), P4(1) ->
Q3 P3(1) ->
Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P4
ZAMAN: 17
Q1 ->
CPUQ2 P5(2) ->
Q3 P3(1) ->
Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P5
ZAMAN: 19
Q1 ->
CPUQ2 ->
Q3 P3(1) ->
Son Islenen Proses : P5 Sonraki Zamanda Islenecek Proses : P3
ZAMAN: 20
Q1 ->
CPUQ2 ->
Q3 ->
Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : Yok

More Related Content

What's hot

Sistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosSistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosLuiz Arthur
 
Linux memory-management-kamal
Linux memory-management-kamalLinux memory-management-kamal
Linux memory-management-kamalKamal Maiti
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architectureAjithaSomasundaram
 
Advance linux presentation_0702011
Advance linux presentation_0702011Advance linux presentation_0702011
Advance linux presentation_0702011Aravindan Arun
 
The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421Linaro
 
Scheduling in Android
Scheduling in AndroidScheduling in Android
Scheduling in AndroidOpersys inc.
 
Virtual memory
Virtual memoryVirtual memory
Virtual memoryrapunzel08
 
Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Pankaj Suryawanshi
 
BKK16-317 How to generate power models for EAS and IPA
BKK16-317 How to generate power models for EAS and IPABKK16-317 How to generate power models for EAS and IPA
BKK16-317 How to generate power models for EAS and IPALinaro
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria37193694
 
Tipos de memoria ram y rom
Tipos de memoria ram y romTipos de memoria ram y rom
Tipos de memoria ram y romzoilitamorocho
 
X-DB Replication Server and MMR
X-DB Replication Server and MMRX-DB Replication Server and MMR
X-DB Replication Server and MMRAshnikbiz
 
Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By AwaisAwaisch3
 

What's hot (20)

Sistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosSistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando Processos
 
Linux memory-management-kamal
Linux memory-management-kamalLinux memory-management-kamal
Linux memory-management-kamal
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
 
Advance linux presentation_0702011
Advance linux presentation_0702011Advance linux presentation_0702011
Advance linux presentation_0702011
 
The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421The Linux Kernel Scheduler (For Beginners) - SFO17-421
The Linux Kernel Scheduler (For Beginners) - SFO17-421
 
Aix install via nim
Aix install via nimAix install via nim
Aix install via nim
 
Scheduling in Android
Scheduling in AndroidScheduling in Android
Scheduling in Android
 
Virtual memory
Virtual memoryVirtual memory
Virtual memory
 
Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)Linux Memory Management with CMA (Contiguous Memory Allocator)
Linux Memory Management with CMA (Contiguous Memory Allocator)
 
Windows x Linux - O que preciso saber!
Windows x Linux - O que preciso saber!Windows x Linux - O que preciso saber!
Windows x Linux - O que preciso saber!
 
BKK16-317 How to generate power models for EAS and IPA
BKK16-317 How to generate power models for EAS and IPABKK16-317 How to generate power models for EAS and IPA
BKK16-317 How to generate power models for EAS and IPA
 
O processador
O processadorO processador
O processador
 
Linux Internals - Part I
Linux Internals - Part ILinux Internals - Part I
Linux Internals - Part I
 
Gerencia de memoria
Gerencia de memoriaGerencia de memoria
Gerencia de memoria
 
Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 
Tipos de memoria ram y rom
Tipos de memoria ram y romTipos de memoria ram y rom
Tipos de memoria ram y rom
 
X-DB Replication Server and MMR
X-DB Replication Server and MMRX-DB Replication Server and MMR
X-DB Replication Server and MMR
 
Windows 2000
Windows 2000Windows 2000
Windows 2000
 
Aula 06-oac-memoria-principal
Aula 06-oac-memoria-principalAula 06-oac-memoria-principal
Aula 06-oac-memoria-principal
 
Operating systems By Awais
Operating systems By AwaisOperating systems By Awais
Operating systems By Awais
 

Similar to İşletim Sistemi Bellek Yönetimi

Bilgisayar bellekleri
Bilgisayar bellekleriBilgisayar bellekleri
Bilgisayar bellekleriyasamaatesi
 
Bilgisayar Mimarisi 09, Feza BUZLUCA
Bilgisayar Mimarisi 09, Feza BUZLUCABilgisayar Mimarisi 09, Feza BUZLUCA
Bilgisayar Mimarisi 09, Feza BUZLUCAFeza BUZLUCA
 
Temel Bilgisayar ve Günümüz Bilgisayarları ile Assembly
Temel Bilgisayar ve Günümüz Bilgisayarları ile AssemblyTemel Bilgisayar ve Günümüz Bilgisayarları ile Assembly
Temel Bilgisayar ve Günümüz Bilgisayarları ile AssemblyŞahabettin Akca
 
BTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin TemelleriBTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin Temellerideniz armutlu
 
Bilgisayar Mimarisi 08, Feza BUZLUCA
Bilgisayar Mimarisi 08, Feza BUZLUCABilgisayar Mimarisi 08, Feza BUZLUCA
Bilgisayar Mimarisi 08, Feza BUZLUCAFeza BUZLUCA
 
64 bit işlemcilerin modern tarihçesi
64 bit işlemcilerin modern tarihçesi64 bit işlemcilerin modern tarihçesi
64 bit işlemcilerin modern tarihçesiTalha Kabakus
 
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıZararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıBGA Cyber Security
 
İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19Cihan Özhan
 

Similar to İşletim Sistemi Bellek Yönetimi (20)

Nurdan Sarıkaya
Nurdan SarıkayaNurdan Sarıkaya
Nurdan Sarıkaya
 
Linkle mimari
Linkle mimariLinkle mimari
Linkle mimari
 
Bilgisayar bellekleri
Bilgisayar bellekleriBilgisayar bellekleri
Bilgisayar bellekleri
 
Ram Bellekler
Ram BelleklerRam Bellekler
Ram Bellekler
 
Bilgisayar Mimarisi 09, Feza BUZLUCA
Bilgisayar Mimarisi 09, Feza BUZLUCABilgisayar Mimarisi 09, Feza BUZLUCA
Bilgisayar Mimarisi 09, Feza BUZLUCA
 
Raid technologies
Raid technologiesRaid technologies
Raid technologies
 
Donanım Sunusu - 6
Donanım Sunusu - 6Donanım Sunusu - 6
Donanım Sunusu - 6
 
Temel Bilgisayar ve Günümüz Bilgisayarları ile Assembly
Temel Bilgisayar ve Günümüz Bilgisayarları ile AssemblyTemel Bilgisayar ve Günümüz Bilgisayarları ile Assembly
Temel Bilgisayar ve Günümüz Bilgisayarları ile Assembly
 
BTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin TemelleriBTT Modul 11 Isletim Sistemlerinin Temelleri
BTT Modul 11 Isletim Sistemlerinin Temelleri
 
öLçekleme sunum
öLçekleme sunumöLçekleme sunum
öLçekleme sunum
 
işletim sistemleri
işletim sistemleriişletim sistemleri
işletim sistemleri
 
Bilgisayar Mimarisi 08, Feza BUZLUCA
Bilgisayar Mimarisi 08, Feza BUZLUCABilgisayar Mimarisi 08, Feza BUZLUCA
Bilgisayar Mimarisi 08, Feza BUZLUCA
 
64 bit işlemcilerin modern tarihçesi
64 bit işlemcilerin modern tarihçesi64 bit işlemcilerin modern tarihçesi
64 bit işlemcilerin modern tarihçesi
 
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıZararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
 
İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19İleri Seviye T-SQL Programlama - Chapter 19
İleri Seviye T-SQL Programlama - Chapter 19
 
Bellekler
BelleklerBellekler
Bellekler
 
Mart
MartMart
Mart
 
Isl sis
Isl sisIsl sis
Isl sis
 
(GFS) Google Dosya Sistemi
(GFS) Google Dosya Sistemi (GFS) Google Dosya Sistemi
(GFS) Google Dosya Sistemi
 
RAM Sunumu
RAM SunumuRAM Sunumu
RAM Sunumu
 

More from Şahabettin Akca

‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf
‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf
‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdfŞahabettin Akca
 
siyaset bilimi ve uluslarası ilişkiler auzef
siyaset bilimi ve uluslarası ilişkiler auzefsiyaset bilimi ve uluslarası ilişkiler auzef
siyaset bilimi ve uluslarası ilişkiler auzefŞahabettin Akca
 
Avrupa Masalı ( İstanbul Hareketli ).pdf
Avrupa Masalı ( İstanbul Hareketli ).pdfAvrupa Masalı ( İstanbul Hareketli ).pdf
Avrupa Masalı ( İstanbul Hareketli ).pdfŞahabettin Akca
 
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdf
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdfİş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdf
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdfŞahabettin Akca
 
Feature selection - metin madenciliği özellik seçimi
Feature selection - metin madenciliği özellik seçimiFeature selection - metin madenciliği özellik seçimi
Feature selection - metin madenciliği özellik seçimiŞahabettin Akca
 
Bilgi Güvenliği Sunumu Nisan 2019
Bilgi Güvenliği Sunumu Nisan 2019Bilgi Güvenliği Sunumu Nisan 2019
Bilgi Güvenliği Sunumu Nisan 2019Şahabettin Akca
 
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleri
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleriMagnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleri
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleriŞahabettin Akca
 
Hoca Ahmet Yesevi Hayatı, Eğitimi ve Esereri
Hoca Ahmet Yesevi Hayatı, Eğitimi ve EsereriHoca Ahmet Yesevi Hayatı, Eğitimi ve Esereri
Hoca Ahmet Yesevi Hayatı, Eğitimi ve EsereriŞahabettin Akca
 
Analog Sayısal ve Sayısal Analog Çeviriciler
Analog Sayısal ve Sayısal Analog ÇeviricilerAnalog Sayısal ve Sayısal Analog Çeviriciler
Analog Sayısal ve Sayısal Analog ÇeviricilerŞahabettin Akca
 
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCA
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCASokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCA
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCAŞahabettin Akca
 
Proje rapor oop program kullanım kılavuzu
Proje rapor oop program kullanım kılavuzuProje rapor oop program kullanım kılavuzu
Proje rapor oop program kullanım kılavuzuŞahabettin Akca
 
Dağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaDağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaŞahabettin Akca
 
Bor Elementi - Şahabettin Akca
Bor Elementi - Şahabettin AkcaBor Elementi - Şahabettin Akca
Bor Elementi - Şahabettin AkcaŞahabettin Akca
 

More from Şahabettin Akca (15)

‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf
‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf
‘NASIL YAŞADIĞIMIZ DEĞİL, NASIL YAŞATTIĞIMIZ ÖNEMLİ’.pdf
 
siyaset bilimi ve uluslarası ilişkiler auzef
siyaset bilimi ve uluslarası ilişkiler auzefsiyaset bilimi ve uluslarası ilişkiler auzef
siyaset bilimi ve uluslarası ilişkiler auzef
 
Avrupa Masalı ( İstanbul Hareketli ).pdf
Avrupa Masalı ( İstanbul Hareketli ).pdfAvrupa Masalı ( İstanbul Hareketli ).pdf
Avrupa Masalı ( İstanbul Hareketli ).pdf
 
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdf
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdfİş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdf
İş sağlığı güvenliği mevzuat ve kişisel koruyucu donanımlar .pdf
 
Feature selection - metin madenciliği özellik seçimi
Feature selection - metin madenciliği özellik seçimiFeature selection - metin madenciliği özellik seçimi
Feature selection - metin madenciliği özellik seçimi
 
Kitap Tokat Sesli
Kitap Tokat SesliKitap Tokat Sesli
Kitap Tokat Sesli
 
Bilgi Güvenliği Sunumu Nisan 2019
Bilgi Güvenliği Sunumu Nisan 2019Bilgi Güvenliği Sunumu Nisan 2019
Bilgi Güvenliği Sunumu Nisan 2019
 
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleri
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleriMagnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleri
Magnetic Levitation (Manyetik Levitasyon) - Elektromekanik sistemleri
 
Çocuk ve Bilgisayar
Çocuk ve BilgisayarÇocuk ve Bilgisayar
Çocuk ve Bilgisayar
 
Hoca Ahmet Yesevi Hayatı, Eğitimi ve Esereri
Hoca Ahmet Yesevi Hayatı, Eğitimi ve EsereriHoca Ahmet Yesevi Hayatı, Eğitimi ve Esereri
Hoca Ahmet Yesevi Hayatı, Eğitimi ve Esereri
 
Analog Sayısal ve Sayısal Analog Çeviriciler
Analog Sayısal ve Sayısal Analog ÇeviricilerAnalog Sayısal ve Sayısal Analog Çeviriciler
Analog Sayısal ve Sayısal Analog Çeviriciler
 
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCA
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCASokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCA
Sokrates niçin yargılandı, suçlamalar nelerdi, savunması - Şahabettin AKCA
 
Proje rapor oop program kullanım kılavuzu
Proje rapor oop program kullanım kılavuzuProje rapor oop program kullanım kılavuzu
Proje rapor oop program kullanım kılavuzu
 
Dağıtık Sistemler / Programlama
Dağıtık Sistemler / ProgramlamaDağıtık Sistemler / Programlama
Dağıtık Sistemler / Programlama
 
Bor Elementi - Şahabettin Akca
Bor Elementi - Şahabettin AkcaBor Elementi - Şahabettin Akca
Bor Elementi - Şahabettin Akca
 

İşletim Sistemi Bellek Yönetimi

  • 1. ÖZET Bellek Yöne-mi, Proses-Thread, Fifo, Round- Robin, Şahabe?n Akca - 132132178 Ahmet Yesevi Üniversitesi – Bilg. Müh. Lisans ÖDEV İşle-m Sistemleri
  • 2. CEVAPLAR 1. Soru Linux Bellek Yöne-mi: ❖ Sayfa (page) adı verilen, mimari ve bellek boyuna göre 4-64 KB boyunda birimler bazında kullanılır . ❖ MMU (memory management unit) adlı işlemci birimi yardımıyla oluşturulan sanal adresleme ile: ▪ Varolandan daha büyük bir bellek alanı kullanılabilir. ▪ Belleğe sığandan daha fazla uygulama çalışerılabilir. ▪ Her uygulamanın kendine ait bir sanal adres alanı olur ❖ Uygulamanın erişmek istediği sanal adres gerçek bellekte yoksa : ▪ İşlemci bir sayfa hatası (page fault) verir. ▪ İşle-m sistemi kontrolü alır, gerekirse bellekte boş yer açıp, istenen sayfayı takas alanında n yükler. ▪ Uygulama kaldığı yerden devam eder ❖ Gerçek bellek dolmaya başladığında işle-m sistemi az erişilen sayfaları takas alanına taşır. ❖ Sayfa hataları büyük yavaşlamaya neden olduğundan, en aza indirgenmeye çalışılır. Linux, disk yüzeyini RAM belleğin bir uzanesıymış gibi kullanan ve böylelikle fiziksel belleğin görünürdeki miktarını ariran sanal bellek desteğine sahip-r. Çekirdek bellekteki kullanılmayan bloklarda bulunan bilgileri, disk yüzeyine yazar ve bellek başka işler için serbest kalmış olur. Bu bölümler gerek-ği zaman bunlar belleğe tekrar alınırlar. Bu olaylar kullanıcıdan bağımsız bir şekilde gerçekleşir. Linux alenda çalışan programlar geniş bir bellek alanı görürken, aslında bazı bilgilerin hemen yanı başlarında olduğundan habersizlerdir. Elbeke ki sanal bellek kullanımı RAM kullanımı kadar hızlı değildir, bu nedenle program hızlarında düşüş yaşanır. Sabit disk üzerinde sanal bellek için kullanılan bölüme takas alanı denir. Aşağıdaki komutla içinde oyuklar olmayan bir takas dosyası oluşturabilirsiniz: # dd if=/dev/zero of=/ek-takas bs=1024 count=1024 1024+0 records in 1024+0 records out # mkswap /ek-takas 1024 Takas alanı sürüm 1, uzunluk = 1044480 bayt olarak ayarlanıyor Bazı kaynaklarda, sahip olunan RAM miktarının iki kae kadar bir takas alanı ayırmanız belir-lebilir. Bu tamamen geçersiz bir kuraldır. Bunun doğru bir şekilde nasıl yapılacağı aşağıda listelenmiş-r. 1. Yaklaşık bellek ihtiyacınızı belirleyin. Bu genellikle bir seferde çalıştıracağınız programların ihtiyaç duyacağı toplam RAM miktarıdır. Yani bir seferde en fazla ne kadar belleğe ihtiyacınız olduğunu bulun. Bunu aynı anda çalıştırmak istediğiniz programları çalıştırarak öğrenebilirsiniz.
  • 3. Aklınızdan çıkarmayın ki; sistemde birden fazla kullanıcı aynı anda yer alacaksa, hepsi ayrı ayrı bellek tüketeceklerdir. Bununla beraber, iki kişi aynı anda aynı programı kullanıyorsa; aynı veri ve kütüphaneleri kullanıyor olacaklarından bellek tüketimi iki kat olmayacaktır. 2. Bellek ihtiyaçlarını değerlendirmek için free ve ps komutları oldukça uygundur. 3. Birinci adımda anlatılan değerlendirmeler için bir parça yanılma payı ekleyin. Büyük ihtimalle kullanmak istediğiniz bazı programları bu hesaplama sırasında unutabilirsiniz, bazılarının gereksinimlerini yanlış hesaplayabilirsiniz veya ileride daha fazla alan ihtiyacı duyabilirsiniz. Birkaç MB disk alanını fazladan ayırmak her zaman iyi olur. Çok küçük bir takas alanı yapmaktansa, biraz büyük bir alan yaratmak her zaman daha iyidir. Ama bunu da fazla abartıp bütün diski takas alanı olarak ayırmayın. Unutmayın ki kullanılmayan alan boşa gitmiş sayılır. Daha sonradan da takas alanına ekleme yapılabileceğini göz önünde bulundurun. Tam sayılarla uğraşmak daha kolay olacağından ihtiyaç duyulan alan hesaplamasını yuvarlayabilir, bir MB büyük alabilirsiniz. 4. Yukarıdaki karşılaştırmalar ve hesaplamalar sonucu şu an ne kadarlık bir belleğe ihtiyaç duyabileceğinizi biliyor olmalısınız. Yerleştireceğiniz takas alanını hesaplamak için, toplam ihtiyaç duyulan alandan fiziksel belleği çıkarın. Kalan sonuç takas alanının boyutunu belirtir. Bazı Unix sürümlerinde bu alanı RAM'in bir yansıması gibi yerleştirmeniz gerekeceğinden, ikinci basamakta hesaplanan alan sizin ihtiyacınızı gösterecek ve çıkartma işlemine gerek kalmayacaktır. 5. Şayet hesaplarınız sonucu ortaya çıkan takas alanı, fiziksel belleğinizin bir kaç katıysa, yeni bir RAM eklemenin zamanı gelmiş demektir. Aksi taktirde performansta çok büyük bir düşüş yaşayabilirsiniz. Hiç ih-yacınız olmasa bile bir parça takas alanına sahip olmak iyi olur. Linux, takas alanını oldukça tasarruflu bir biçimde kullanır ve bu size mümkün mertebe boş bir fiziksel bellek sağlar. Takas ih-yacı olmasa bile, Linux kullanılmayan bellek sayfalarını takas alanına gönderir. Bu sayede, disk pasif halde iken takas yapılarak takasa ih-yaç duyulduğu anlarda bekleme yapılması önlenir. Windows Bellek Yöne-mi: Windows geleneksel olarak aşağıda sıraladığım bellek yönetim methodlarını kullanmaktadır. Hepsinin kullanım amaçlarına göre avantaj ve dezavantajları vardır. Bazısı büyük belleğe ihtiyaç duyabilir, bazısının algoritmasının işletilmesi, program akışı sırasında yavaşlamalara ve hatalara sebep olabilir. 
 Bu geleneksel yaklaşımların yanı sıra; Windows Vista ile 2007’li yıllarda Readyboost denen Linux’un swap alanına benzeyen bir yöntem denemiş bu alan için Flash Disk denen bellekleri kullanarak bilgisayara ram takviyesi yapmaya yarayan yöntemleri de yeni İşletim sistemlerine entegre etmiştir. ►Bölmeleme (Partitioning) : Boş bölmeye, boyu bölme boyundan küçük ya da eşit prosesler yüklenebilir. Tüm bölmeler doluysa proseslerden biri bellekten atılır – Sabit : her program ne kadar boyu küçük de olsa tam bir bölmeyi elinde tutar ⇒ iç parçalanma (internal fragmentation), Maksimum aktif proses sayısı sınırlıdır, İşletim sistemi tarafından gerçeklenmesi kolay
  • 4. – Dinamik : Bölme sayısı ve bölme boyları sabit değil. Proseslere sadece gerektiği kadar bellek atanır. Hangi boş bloğun hangi proses atanacağına işletim sistemi karar verir. En- İyi-Sığan Algoritması (Best-Fit) – Boyu istenene en yakın olan boşluk seçilir. Olası en küçük bölme bulunduğundan artan boş alan daha az kalır. Alternatif olarak İlk-Sığan Algoritması (First-fit) işletim sistemi daha hızlı çalışacaktır. ►Basit sayfalama (Paging) : Belleği küçük, eşit boylu parçalara böl. Prosesleri de aynı boyda parçalara ayır. .Eşit boylu proses parçaları: sayfa .Eşit boylu bellek parçaları: çerçeve .İşletim sistemi her proses için sayfa tablosu tutar – prosesin her sayfasının hangi çerçevede olduğu – bellek adresi = sayfa numarası ve sayfa içi ofset adresi .İşletim sistemi hangi çerçevelerin boş olduğunu tutar ►Basit segmanlama (Segmentation): Program segmanlara ayrılır. Tüm programların tüm segmanları aynı boyda olmak zorunda değil. Segman boyunun üst sınırı var .Mantıksal adresler iki bölümden oluşur -segman numarası ve segman içi ofset – segman tablosundan segmanın adresi ve boyu alınır .Segman boyları eşit olmadığından dinamik bölmelemeye benzer .Bir program birden fazla segmandan oluşabilir ►Sayfalamalı görüntü bellek (Virtual Memory) ►Segmanlamalı görüntü bellek: Program segmanlara ayrılır. Tüm programların tüm segmanları aynı boyda olmak zorunda değil. Segman boyunun üst sınırı var .Mantıksal adresler iki bölümden oluşur , segman numarası ve segman içi ofset , segman tablosundan segmanın adresi ve boyu alınır .Segman boyları eşit olmadığından dinamik bölmelemeye benzer .Bir program birden fazla segmandan oluşabilir Windows ve Linux İşle-m Sistemleri Bellek Yöne-mi Karşılaşerılması:
  • 5. 2. Soru Ölümcül Kilitlenme, bekleme durumundaki görevlerin, hazır görev durumuna geçebilmek için bir diğerinin sağlayacağı koşulu karşılıklı beklemelerine verilen addır. Görevlerin her birinin bekler olması ve çalışabilmek için bir diğerinin işletilmesinin gerekmesi durumu, görevlerin hiçbir zaman gerçekleşmeyecek bir koşulu beklemeleri sonucunu doğurur. Birden fazla proses olması durumunda proseslerin bir kaynağı ellerinde tutmaları ve bir başka kaynağı istemeleri durumunda ölümcül kilitlenme meydana gelir. Algoritmalar: 1-) P n+1 prosesini ancak ve ancak aşağıdaki koşul gerçeklendiğinde başlat: Tüm i’ler için ; Optimal değil. Tüm proseslerin maksimum kaynak gereksinimlerini birden isteyeceğini varsayar. 2-) Banker algoritması : Bu algoritmanın çözdüğü sorun, değişmez bir sermayeye sahip olup bunu müşterileri arasında bölüştüren bir bankerin iflas etmeden herkese para sağlaması olarak tanımlanır. – Sistemde sabit sayıda proses ve kaynak vardır – Sistemin durumu: Kaynakların proseslere o anki ataması ⇒ durum Kaynak ve Boş vektörlerinden ve Atanmış ve İstek matrislerinden oluşur. Windows NT ve türevleri, bellek yöne-mi için bir dinamik olarak tahsis edilen disk belleği dosyası kullanırlar. Ak-f olarak kullanılan nesnelere daha fazla RAM bırakarak bir disk belleği dosyası, bellekte daha az sıklıkla erişilen nesneler için, disk üzerinde tahsis edilir. Bu düzen, disk parçalanması, nesnelere ih-yaç duyulduğunda belleğe geri ge-rilebilir, sabit disk depolama alanından ge-rilmesi nedeniyle yavaş işlemler dezavantaj sebebidir. Ayrı bir bölüm Windows disk belleği dosyası yerleş-rmek için yapılandırılabilir; Bunu yaparken disk parçalanması sorunlarını olumsuz etkiler. Ancak; iki bölüm arasında ileri ve geri geçiş yer alan arama süresi nedeniyle bir I / O yavaşlama oluşabilir. Ancak, bu varsayılan yapmadı ana nedeni, disk belleği dosyası ayrı bir bölüm ise, sonra Windows Dur Hatası ( Mavi ekran ) olay bir bellek dökümü oluşturamazsınız. Performans açısından ideal bir çözüm, ayrı bir sabit disk birleş-rme ve I / O sorunları ortadan kaldıran birincil, disk belleği dosyası var. Linux sabit disk kurulumları sayfalama için ayrılan disk alanı, genel veriler ayrı ve sayfalama işlemleri için kesinlikle bir "takas bölümü" kullanmaktadır. 
 Bu, genel kullanım disk parçalanması nedeniyle yavaşlamayı azaler. 
 
 Windows ile birlikte kullanımda en iyi performans için, takas bölümü ve birincil disk ayrı bir sabit disk üzerine yerleş-rilmiş olmalıdır.
  • 6. – Emin durum: Ölümcül kilitlenmeye yol açmayacak en az bir atama sekansı olduğu durum (yani tüm proseslerin sonlanabileceği durum) – Bir proses bir grup kaynak için istekte bulunduğunda işle-m sistemi, 1. Kaynakların atandığını varsayarak sistem durumunu günceller. 2. Yeni durum emin bir durum mu diye kontrol eder. 3. Emin ise atamayı gerçekleş-rir. – Emin değilse atamayı yapmaz ve istekte bulunan prosesi isteklerin karşılanması uygun olana kadar bloke eder.
  • 7. 3. Soru #define _POSIX_SOURCE #include <sys⁄times.h> #include <time.h> #include <sys⁄types.h> #include <sys⁄wait.h> #include <stdio.h> #include <unistd.h> main() { int status; long i, j; struct tms t; clock_t dub; int tics_per_second; tics_per_second = sysconf(_SC_CLK_TCK); if (fork() == 0) { for (i=0, j=0; i<1000000; i++) j += i; exit(0); } if (wait(&status) == -1) perror("hata: wait()"); else if (!WIFEXITED(status)) puts("cocuk cikis hatasi"); else if ((dub = times(&t)) == -1) perror("hata: times()"); else { printf("process %f saniye once calistirildi.nn", ((double) dub)⁄tics_per_second); printf(" kullanici sistemn"); printf("anne: %f %fn", ((double) t.tms_utime)⁄tics_per_second, ((double) t.tms_stime)⁄tics_per_second); printf("cocuk: %f %fn", ((double) t.tms_cutime)⁄tics_per_second, ((double) t.tms_cstime)⁄tics_per_second); } }
  • 8. 4. Soru Tablolar Hakkinda T: Sure, P: Proses’leri sembolize etmektedir.. Tablonun P satirinda o an isletilen prosesler renklendirilmistir. Kuyruktaki isler ise dikey olarak renklendirilmistir. Alt alta 2 kirmizi ve 3 yesil renk varsa bu kuyrukta isletilecek 2 birim islik P1 prosesi ve 3 birim işlik. P3 prosesi olduğunu göstermektedir.. Kuyruktaki kalan isler de T surelerine denk gelen dikey dogrultudan gorulebilir. First In First Out : İlk Giren İlk Çıkar, önce gelen işler tamamlanıyor, yeni gelen işler ise kuyruğa ekleniyor. 
 Ortalama bekleme suresi : (0 + 3 + 4 + 9 + 10) / 5 = 5,2
 Proses Gelis Ani Hizmet Suresi Renk P1 0 4 P2 2 3 P3 4 6 P4 5 3 P5 7 4 T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P P1 P2 P3 P4 P5 Kuyruktaki Isler
  • 9. 
 Shortest Remaining Time First Ortalama bekleme suresi : (0 + 3 + 11 + 3 + 4) / 5 = 4,2 T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P P1 P2 P4 P5 P3 Kuyruktaki Isler
  • 10. Round Robin: Bir zamanlama (scheduling) algoritmasıdır. Özellikle işle-m sistemi tasarımında işlemcinin (CPU) zamanlamasında kullanılan meşhur algoritmalardan birisidir. Bu algoritmaya göre sırası gelen işlem, işlemcide işi bitmese bile belirli bir zaman biriminden sonra (-me quadrant) işlemciyi terk etmek zorundadır. Bu sayed işle-m sisteminde kıtlık (Starva-on) olma ih-mali kalmaz. Çünkü hiç bir zaman bir işlemin CPU’yu alıp diğer işlemlere sıra gelmesini engellemesi mümkün olmaz. Time Quantum : 2 Ortalama bekleme suresi : (9 + 10 + 11 + 9 + 8) / 5 = 9,4 T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P P1 Kuyruktaki Isler
  • 11. Multi Level Bu ornek icin 3 kuyruklu bir sistem dusunulmustur. 1. ve 2. kuyruklar round robin algoritmasiyla, son kuyruk FIFO algoritmasiyla calismaktadir. 1. kuyrugun zaman suresi (Time Quantum) 2 olarak, 2. kuyrugunki ise 3 olarak belirlenmistir. Kuyruklarin oncelik sirasi 1 > 2 > 3’tur ve ust oncelikteki kuyruk bosalmadan bir alt kuyruktaki islere gecilmemektedir. Asagidaki her tablo zamana gore proseslerin islenmesini ve kuyruktaki proseslerin durumunu gostermektedir. Proseslerin yanindaki parantez icindeki sayilar kalan is sayisini gostermektedir. ZAMAN: 0 CPU FIFO Q=3
  • 12. Q1 P1(4) -> CPUQ2 -> Q3 -> Son Islenen Proses : Yok Sonraki Zamanda Islenecek Proses : P1 ZAMAN: 2 Q1 P2(3) -> CPUQ2 P1(2) -> Q3 -> Son Islenen Proses : P1 Sonraki Zamanda Islenecek Proses : P2 ZAMAN: 4 Q1 P3(6) -> CPUQ2 P2(1), P1(2) -> Q3 -> Son Islenen Proses : P2 Sonraki Zamanda Islenecek Proses : P3 ZAMAN: 5 Q1 P4(3), P3(5) -> CPUQ2 P2(1), P1(2) -> Q3 -> Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P3 ZAMAN: 6 Q1 P4(3) -> CPUQ2 P3(4), P2(1), P1(2) -> Q3 -> Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P4
  • 13. ZAMAN: 7 Q1 P5(4), P4(2) -> CPUQ2 P3(4), P2(1), P1(2) -> Q3 -> Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P4 ZAMAN: 8 Q1 P5(4) -> CPUQ2 P4(1), P3(4), P2(1), P1(2) -> Q3 -> Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P5 ZAMAN: 10 Q1 -> CPUQ2 P5(2), P4(1), P3(4), P2(1), P1(2) -> Q3 -> Son Islenen Proses : P5 Sonraki Zamanda Islenecek Proses : P1 ZAMAN: 12 Q1 -> CPUQ2 P5(2), P4(1), P3(4), P2(1) -> Q3 -> Son Islenen Proses : P1 Sonraki Zamanda Islenecek Proses : P2 ZAMAN: 13 Q1 -> CPUQ2 P5(2), P4(1), P3(4) -> Q3 -> Son Islenen Proses : P2 Sonraki Zamanda Islenecek Proses : P3
  • 14. Ortalama bekleme suresi : (8 + 8 + 8 + 4 + 8) / 5 = 7,2 ZAMAN: 16 Q1 -> CPUQ2 P5(2), P4(1) -> Q3 P3(1) -> Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : P4 ZAMAN: 17 Q1 -> CPUQ2 P5(2) -> Q3 P3(1) -> Son Islenen Proses : P4 Sonraki Zamanda Islenecek Proses : P5 ZAMAN: 19 Q1 -> CPUQ2 -> Q3 P3(1) -> Son Islenen Proses : P5 Sonraki Zamanda Islenecek Proses : P3 ZAMAN: 20 Q1 -> CPUQ2 -> Q3 -> Son Islenen Proses : P3 Sonraki Zamanda Islenecek Proses : Yok