Kategoriler


SON YORUMLAR
Tatar Ramazan
Bilgisayar mühendisliğinden şikayet etmeyeyim diyorum ama bütün veriler beni haklı çıkarıyor. Aşağıda yazdık okuyun: Yazılım uzmanı pozisyonu için; 1-) Kariyernette 2000-3000 TL arası maaş veren 100 ilan var. 2-) 3000-6000 arası maş veren 100 ilan 3-) 6000 ve üzeri veren sadece 5 ilan var Bu mu iyi para kazandıran meslek?! Memurluğu iyi ki bırakmamışım. Bir de adamın canını çıkarıyorlar. Her çıkan teknolojiyi öğrenmeni bekliyorlar. İstanbulda kiralar 2000.den başlıyor. 6000 TL bile yüksek maaş falan değil. 2008.de mezun oldum. O zaman da aynı paralar veriliyordu. Zaman geçtikçe aday sayısı artıp rekabet kızıştıkça maaşlar düşüyor, vasatlaşıyor. 2010 yılında 5000 TL kazanan grafikerler duyuyordum. Mesleğimiz yerlerde sürünüyor. Memur olmak ta zorlaşınca uyanık iş veren size iyi para verir mi sanıyorsunuz? Nasıl olsa kaçamazsınız Devlet.e...KPSS zor artık.

yeşekkür ederiz beğendim
Dilara
Merhaba, ben bilgisayar mühendisliği öğrencisiyim yabancı dilimde var ama sitelerden okuduğum yorumlardan dolayı gelecek kaygısı yaşıyorum,nasıl bir yol izlemem gerek lütfen yorumlarınızla bana yardımcı olur musunuz?
sultan b.
makaleniz gerçekten yardımcı ve aydınlatıcı fakat örnekler verirken sürekli .abi, adam. vs özneler kullanmanız beni rahatsız etti. bilgisayar mühendisi olmak isteyen bir kadın olarak açıkçası bu durum beni biraz umutsuzluğa sürüklemedi de değil.
irfan
https://www.udemy.com/linux-and-bash-shell-scripting-from-beginner-to-intermediate/learn/v4/overview
Tatar Ramazan
İlerde düzelecek inşaallahu Teala her şey. Herkes hakkını eninde sonunda alır. Son gülen iyi güler. Başlangıçta bütün mühendisler aynı alır ama kendini geliştiren ilerleyen dönemlerde farkı açar.
tatar ramazan-a
tatar ramazan ağlamayı bırak. kendi şirketini kurma vaktin gelmiş. devletten ayrıl. işveren ol artık. herkesi eleştirmeyi bırak. eleştirilmeyecek bir şirket kur.
bir zamanlar anadoluda
zamanında iyi sürünmüş, iyi aşağılanmış ve itlerin çakalların arasında yaşamış, onlarla savaşmış itliği çakallığı halen öğrenen birisi olarak tavsiyeler: 1- kendini geliştirmek tam bir saçmalıktır (Google vb. mülakatlara falan girmek gibi durumlar hariç) 2- herşey çevrenle başlar çevrenle biter, iş bulma da karı da kız da çevrene bakar. başta suratıma bile bakmayan kızlar, popülerlğimi (milletçe akıllı, çalışkan, başarılı, zengin, cool diye nitelenmek gibi) görünce köpeğim oldu selam dahi vermiyorum yine rahat vermiyorlar. 3- nasıl populer oldum? çalışarak mı? en az çalışanlardandım. 4- algıyı yöneteceksiniz. kendinizi satmayı bileceksiniz. reklamınızı yapacaksınız. kendini satamazsanız ne kız gelir ne iş verirler. 5- o beğenmediğin 3 birimlik erkek veya işe giren eleman, potansiyeli 1 ise 3 gösterir sen 10 ken bişr gösteremezsen, ne karı gelir ne birşey. yarın karın da sygı duymaz gözünün önünde başkasıyla sikişir.
Tatar Ramazan
Site sahibine 2008 de mail atmıştım danışmıştım. O günden beri siteyi takip ederim. Ateşli yazıları kendimi geliştirmemde etkili olmuştur. İstanbul üniversitesi iyi eğitim veriyor diye yorum yazan da bendim. Çok uyanığımdır. Zekam keskindir. Keşke üniversitem de biraz yol gösterseydi. Dersler, kitaplar belli sen niye hocalardan rehberlik bekledin diyecek olursanız: Tamam da bir sürü programlama dili var. Hangisinden başlayacağım, ne bileyim? C dilini öğrenin sonra C# veya java dan devam edersiniz diyebilirlerdi. Bunu bile yapamadılar. Bölüm başkanı da değişmişti. İyi şeyler yapayım derken daha kötü batırdı. Nesne tabanlı programlama dersinde for döngüsü gördük C sharpta. En azından takip programı yaptırdı bize işte. ADO.NET, SQL Server öğrendik. Ama sınıf nesne tabanlı programlamayı bir türlü sökemedi. Çünkü C dilinde struct konusunu öğrenmeyince sınıfları da özümsemek zor oldu. Debelendik durduk. İTÜ, Yıldız Teknik, İstanbul gibi üniversitelerin farkı burda. Bu kadar basit! C, C++ dilini iyi veriyor adamlar. Yahu C dilinin konularını tahtaya yazsaydı araştırma görevlisi bana yeterdi bile. Mıy mıy mıy yapıp durdular 4 sene boyunca. Ben ilk yarıyıl tatilinde (5 haftaydı) evde İntegraldan 200 soru çözüp vize finalden 100-100 almış adamım. Görün işte ben bile geri kalıyorsam programcılıkta öğretimde sorun var demek ki. Site sahibine kalsa üniversite önemli değil. Tabi kendisi İstanbul üniversitesinde iyi eğitim aldı. Kötü öğretimi, ilgisizliği tatmadı.
Tatar Ramazan
Eve şanssızdım her açıdan bundan sonra mutlu olur muyum bilmiyorum. Biz imanlıyız umudumuzu kesmeyiz. Yazdıklarımda doğruluk payı da var ama. Meslek ve sektörde bir sürü sıkıntı var. Sektör yöneticileri ve Üniv. hocaları niye bir araya gelip sorunları çözemiyor. Bilişim sektörü daha verimli büyük olabilirdi. Yazılım çağı diyorsak bu işe bir el atmalıyız. Mesleğimden şikayet ederim ama aynı zamanda ateşli gayretli adamımdır. Üniversitede gene hasta takip programı, satranç oyunu, E-Ticaret sitesi ve irili ufaklı 30 tane program yapmıştım. Çok boş mezun olmadım. Sınıfın ineklerindendim. Marmara bölgesinde 92 den sonra kurulan bir üniversitede okudum. Hocalar ilgisiz ve bilgisizdi. Sınıfın % 70 i C dilini öğrenemeden mezun oldu. Şunu şöyle yapın demekten aciz adamları hoca diye başımıza niye koyuyorlar? Sistemde de saçmalık var. Derslerin çoğu işe yaramıyor. Lise 1 den itibaren programlama çalışsaydım şimdi çok farklı olurdu. Boş yere zaman kaybı okumak. İnsanlara da zulmetmeyin gayrı. Bilim adamı olmak isteyen üniversitede kalsın. Bana Java, .NET, Oracle lazım kardeşim. Okumayanların eşi, arabası var. Ben sürünüp duruyorum. Memur maaşıyla bi şey yapamıyorsun ki. 2 ay önce 5000 tl oldu işte. Harita mühendisine de veriyorlar o kadar zaten. Benim sadece SQL bilgim onları ezmeye yeter.
HARUN AYDIN
YAZI BENİ DE ETKİLEDİ.BENDE BİLGİSAYAR ALANINDA İLERLEMEK İSTİYORUM.İLGİM DE VAR AMA YETERLİ BİLGİM YOK.BU YAZIDA ANLADIM Kİ GEREK DE YOKMUŞ İYİ BİR OKULDAYIM İYİ BİR ÜNİVERSİTE DE KAZANMAK İÇİN ELİMDEN GELENİ YAPICAM. BU YAZI İÇİN ÇOK TEŞEKKÜR EDERİM..
Mehmet Cemil Bayhan
Çok harika bir makale yazmışsınız.Ellerinize sağlık. Beni bayağı gaza getirdi gerçekten. Ben şuan lise 3 öğrencisiyim. Şimdiden bilgisayar hakkında bilgi sahibi olmaya çalışıyordum ama sizin bu yazınızı okuduktan sonra fikrim değişti. Artık şuan düşüneceğim tek şey YGS-LYS. SİZE NE KADAR TEŞEKKÜR ETSEM AZDIR. ÇOOOOOK TEŞEKKÜR EDİYORUM.........😆😉😊
Mehmet Cemil Bayhan
Çok harika bir makale yazmışsın ızgara.Ellerinize sağlık. Beni bayağı gaza getirdi gerçekten. Ben şuan lise 3 öğrencisiyim. Şimdiden bilgisayar hakkında bilgi sahibi olmaya çalışıyordum ama sizin bu yazınızı okuduktan sonra fikrim değişti. Artık şuan düşüneceğim tek şey YGS-LYS. SİZE NE KADAR TEŞEKKÜR ETSEM AZDIR. ÇOOOOOK TEŞEKKÜR EDİYORUM.........😆😉😊
eskidevir-yenidevir
sizin şanssızlığınız olmuş. işler yolunda gitmemiş diye anlıyorum.

Bilgisayar Mühendisleri
Here is the website inspired me to use 
it as a guide when I tried to define 
myself as an engineer candidate a few 
years ago. It really helped me to work
 and study feeling in confidence with 
being on the right way. I suggest this 
website to whom it may direct her/his 
to find the right career path. It 
includes many articles varies from 
real life experiences to detailed 
software engineering issues. But the 
most dignified parts for me are the 
articles in general and career titles.
Son okunan makaleler:
Sanal Bellek Nedir?
Vakıf üniversiteleri
BİLGİSAYAR MÜHENDİSLİĞİ GEREKSİZ BİR MESLEKTİR !!!
Akıllı istemciler oluşturabilmek için ClickOnce
Bilgisayar Mühendisliğini yeni kazandım, neler yapmalıyım?
MODEM ÇEŞİTLERİ
NHibernate için Veri Erişim Katmanını Otomatik Oluşturma
Bilgisayar Mühendisliği ÖSS Taban Puanları 2009
Neden yazılım uzmanı olamayacağınızın 10 kanıtı?
Microsoftda Çalışan Bir Türk ile Yapılmış Röportaj
Online Java Dersleri - İstisnalar - Exceptions
2008 CPU TURKEY YARIŞMASI SONUÇLANDI!
Kendini Geliştirmek Ne Demek?
Askerlik ve Bilgisayar Mühendisliği
IP SINIFLARI
Mezunları en kolay iş bulan üniversiteler
NHibernate için Veri Erişim Katmanını Otomatik Oluşturma
Yeni mezun bilgisayar mühendisleri için 10 büyük günah!
Bilgisayar Mühendsileri için CV hazırlama rehberi - 1
VERİ İLETİM TİPLERİ - Half Duplex - Full Duplex - Simplex

Bilgisayar Mühendisleri Portalı

Sanal Bellek Nedir?

SANAL BELLEK - Virtual Memory
Çalışabilmesi için var olan bellek kapasitesinden fazlasını isteyen programların çalışabilir kılınması eski bir bilgisayar problemidir. Buna üretilen genel çözüm katman (overlay) yaklaşımı idi. Katmanlar programın parçalara bölünmüş hali idi. Sıfırıncı katman ilk olarak çalışmalı, işi bittikten sonra başka bir katmanı çağırmalıydı. Bunun yanında karmaşık yapılı, bellekte çoklu katmanlar çalıştırılmasını sağlayan yaklaşımlar da vardı. Katmanlar diskte bulunmalı, işletim sistemi tarafından belleğe yüklenmesi veya bellekten kaldırılması yapılmalı idi.

Bu yaklaşımdaki temel sorun, programın parçalara bölünme işinin programcı tarafından yapılmak zorunda olması idi. Bu işin büyük bir program için yapılması da oldukça zaman kaybına sebep olacağı açık idi.

Sonuçta sanal bellek kavramı ortaya çıktı. Temel mantığı program kodunun, programda kullanılan değişkenler, veri yapıları, vs.nin (data) ve de programın yığın alanının (stack) var olan bellek alanına sığmamasına dayanır.Bu durumda işletim sistemi programın kullanılan parçalarından kullanılanları bellekte, kalanını ise diskte tutar.

Kısaca söylemek gerekirse, sanal bellek bir bilgisayar programının var olan gerçek fiziksel bellekten daha fazla bellek varmış gibi davranmasını sağlayan sistemdir.

SAYFALAMA VE SAYFA HATASI

Pekçok bilgisayar sistemi sanal bellek adı verilen bir teknik kullanmaktadır. Her bilgisayarda kullanılabilecek bir adres uzayı vardır. Adres uzayı ile işlemcinin, bir sürecin veya bellek ve işlemci dışındaki bir bilgisayar donanımının erişebileceği adress genişliği/sınırı kastedilmektedir. Aşağıdaki program kodunu inceleyelim.

MOVE x, 1000

Mimari tasarımın, bu kod parçasının 1000 numaralı adresteki verinin, X ile gösterilen yazmaca veya değişkene atanmasını sağlayacak şekilde yapıldığını düşünelim. Programda üretilen/kullanılan adresler sanal bellek sisteminin kullanıldığı bir tasarımda gerçek fiziksel adresler değildir. Programda üretilen adreslere sanal adres denir ve bu adresler sanal adres uzayını oluşturur. Sanal adresler yazılımsal veya donanımsal olarak gerçek fiziksel adreslere çevrilmektedir. Sanal adres uzayı eşit büyüklükteki parçalara bölünür. Bunların herbirine sayfa (page) denir. Bu sayfalara karşılık gelen fiziksel bellek alanlarına ise sayfa çerçevesi denir. Eşit büyüklükte ve adreslenebilirlikteki kolaylığı nedeniyle 4K seçilen sayfa ve sayfa çerçevelerinden oluşan bir gösterim aşağıdaki gibi olabilir.

 mapping from virtual memory to physical memeory

Görüldüğü gibi sanal bellek üzerindeki bazı alanlar gerçek fiziksel bellek üzerindeki alanlara karşılık gelmektedir. Bire-bir şekilde yapılan iki yapı arasındaki bu eşlemeye haritalama (mapping) denir. Yazının bundan sonraki kısmında bellekteki sayfa ile, sanal bellek üzerinde fiziksel belleğin bir alanını referans eden sayfa ve bunun referans ettiği alan içindeki bilgiler kastedilecektir.

SAYFA HATASI
Yukarıdaki şekilde sayfaların bazılarının fiziksel belleğe referans etmediği görülmektedir. (X ile işaretli alanlar) Programın çalışması sırasında program kodu, erişim yetkisi olmayan bir alana erişmeye çalışabilir veya sanal bellek üzerinde fiziksel belleğe henüz referans edilmemiş bir alana erişmeye çalışabilir. Sayfa Hatası olarak adlandırılan bu durumda, işletim sisteminin bellekten uygun bir sayfayı boşaltması ve istekte bulunan programa bunu tahsis etmesi gerekmektedir. Bellekte uygun bir sayfa ayarlandıktan sonra, sayfa hatasına sebep olan kod tekrar çalıştırılır. Gözden kaçırılmaması gereken nokta, tahsis edilecek bellek gözündeki veriler değiştiyse, önce bunların takas alanına aktarılarak saklanması gerekliliğidir. Değişmediyse, ayarlanan sayfa üzerine veriler yazılacaktır.

Yukarıda bahsi geçen, sayfa hatası durumunda bellekteki uygun bir sayfanın seçimi ele alınması gereken bir noktadır. Eğer sıklıkla kullanılan bir sayfa seçilirse, takas alanından bu sayfanın sık çağrılmasından dolayı performans kaybı olacaktır. Şimdi sayfa hatası durumunda seçilecek sayfayı belirlemeye getirilen yaklaşımlardan biri olan FIFO (first in- first out)'yu inceleyelim.

FIFO (First In - First Out)
Bu yaklaşımda işletim sistemi bellekte bulunan sayfalar için bağlı bir liste yapısı oluşturur. Listedeki yapıların bellekteki sayfaları işaret eden yapılar olduğunu düşünebiliriz. Bu listenin baş (head) kısmı en eski (belleğe ilk gelen) sayfayı tutarken, kuyruk (tail) kısmı en yeni (en son gelen) sayfayı tutar. Bir sayfa hatası durumunda, listede baş kısmın işaret ettiği sayfa seçilmektedir. Belleğe yeni yüklenen sayfa da liste sonuna eklenir.

Uygulaması ve yazılması kolay bir metoddur. Fakat sadece sayfaların belleğe geliş sıralarına bakmakta, sayfaların kullanım sıklığını göz ardı etmektedir. Sıklıkla kullanılan sayfaların da bellekten çıkarılmasına sebep olabilmektedir. Ayrıca belleğe her sayfa giriş çıkışında da bağlı listenin güncellenmesi gerekecektir. Bunun için tercih edilen bir metod değildir.

Sadece 3 tane sayfayla referans edilebilen bir bellekte sirasiyla 1,5,3,1,6,1,6,5 numarali sayfalara erişim gerekliliği olsun. Bellekteki sayfaların durumu sırasıyla aşağıdaki gibi olacaktır.

FIFO Gösterimi

1 numarali sayfaya istekte bulunulduğunda sayfa belleğe yüklenecektir. Daha sonra 5 numarali sayfaya istekte 5 ve ardindan da 3 numarali sayfa belleğe yüklenecektir. Bu anda belleğe ilk yüklenen 1 numarali sayfa en eski durumunda, son eklenen 3 ise en yeni durumundadır. Daha sonra 1 numaralı sayfaya tekrar istekte bulunulur ve bellekte zaten olduğu için herhangi bir yerdeğiştirme yapılmadan sıradaki 6 numaralı sayfaya istek ele alınır. Henüz bellekte referans edilmemiş bir sayfa numarasına istek verildiğinden sayfa hatası oluşur ve bunun FIFO ile çözümünün yapılabilmesi için en eski sayfanın çıkarılıp yerine yeni gelen sayfanın yüklenmesi gerekmektedir. Buradaki çıkarma işleminin eger çıkarılacak sayfada bir değişiklik olduysa takas alanına yazmak ya da kullanılmayacaksa üzerine yazmak şeklinde olacağı unutulmamalıdır. Böylece 6 numaralı sayfa 1 numaralı sayfanın olduğu konuma yüklenir. Bu durumda en yeni olan sayfa 6, en eski olan sayfa ise 5 dir. 1 numaralı sayfaya tekrar istek geldiğinde artık bellekte olmadığından tekrar sayfa hatası oluşur ve bu sefer 5 numaralı sayfa çıkarılarak yerine 1 numaralı sayfa yüklenir. Tekrar 6 numaralı sayfaya istekte bulunulduğunda zaten bellekte olduğu için sıradaki isteğe geçilir ve 5 numaralı sayfa isteğiyle sayfa hatası tekrar oluşur ve diğerlerine göre daha uzun süredir bellekte beklemekte olan 3 numaralı sayfa çıkarılarak yerine 5 numaralı sayfa yüklenir.

Oğuz Yarımtepe

Bu makaleyi beğendin mi? Yorumunu Yaz!







Sizden Gelen Yorumlar:

Yorum Yazın

busee(14.01.2016 17:37:34)
çok yardımcı oldu teşekkür ederim :)
%50 %0 %50
Katılıyorum Çekimserim Katılmıyorum






Copyright© 2001-2017. Bilgisayar Mühendisleri Portalı | Bütün hakları saklıdır.