İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.

Slides:



Advertisements
Benzer bir sunumlar
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
Advertisements

Donanım ve Yazılım Tacettin İnandı Halk Sağlığı. DONANIM VE YAZILIM KAVRAMLARI Bilgisayar, yazılım (software) ve donanım (hardware) olmak üzere iki bölümden.
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
OEE ve KOBETSU KAIZEN EĞİTİMLERİ Yer : İzmir
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
KAPASİTE PLANLAMA VE KAPASİTE KULLANIMI
Veri Tabanı Yönetim Sistemleri Hafta 1. 2 Temel Kavramlar Veri Olguların, kavramların, veya talimatların, insan tarafından veya otomatik yolla iletişim,
Donanım Birimleri.
Hat Dengeleme.
YEDEKLEME NEDIR? Gülşen Güler. YEDEKLEME NEDIR? Yedekleme, en genel anlamıyla, bir bilgisayar sistemini işlevsel kılan temel birimlerin, üzerinde çalışan.
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
SUNUCU İŞLETİM SİSTEMİ Öğr. Gör. Ümit ATİLA.  1980’li yıllardan günümüze geldikçe, bilgi toplumuna yönelişte teknolojik rota, telekomünikasyon ve iletişim.
Ağ Anahtarı (Switch) Çeşitleri
BİLGİSAYAR PROGRAMLAMA Ders 11: İşaretçi (Pointer) Kullanımı Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
DONANIM VE YAZILIM.
İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI. Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini.
İÇİNDEKİLER GRID COMPUTING NEDİR? NASIL ÇALIŞIR? GRID COMPUTING YAPISI
Yazılım Mühendisliği1[ 3.hft ]. Yazılım Mühendisliği2 Yazılım İ sterlerinin Çözümlemesi Yazılım Yaşam Çevrimi “ Yazılım Yaşam çevrimin herhangi bir yazılım.
SANALLAŞTIRMA ÇEŞİTLERİ VE YAZILIMLARI
ÇOK BOYUTLU SİNYAL İŞLEME
HARİCİ VERİ DEPOLAMA SİSTEMLERİ. HARİCİ VERİ DEPOLAMA NEDİR?  Harici Veri Depolama: Verilerimizi saklamak ve gelecekte kullanmak amacıyla kullanılan.
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DONANIM VE YAZILIM.
NETWORK YÖNETIMI Ş. Bü ş ra Güngör NETWORK YÖNETIMI NEDIR? Network, sunucu, yazıcı, bilgisayar ve modem gibi veri ileti ş im araçlarının güncel.
İŞLETİM SİSTEMİ İşletim Sistemi Nedir İşletim Sisteminin Görevleri
İnternet'e Bağlanmak İçin Neler Gereklidir?
Bilgiye Ulaşma ve Biçimlendirme
Hız felaket mi? 32-Bit/64-Bit işlemciler üzerine örnek bir çalışma
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ
İŞLETİM SİSTEMLERİ ISE 206 Dr. Tuğrul TAŞCI.
BİLGİSAYAR ÖLÇÜ BİRİMLERİ
Bilgisayar Donanım ve Sistem Yazılımı
Deneme Modelleri Neden-sonuç ilişkilerinin sorgulandığı araştırma türleridir. Deneme ve tarama modelleri arasındaki fark nedir? Deneme modellerinde amaçlar.
Problem Çözme ve Algoritmalar
Yapay Sinir Ağı Modeli (öğretmenli öğrenme) Çok Katmanlı Algılayıcı
PROGRAMLAMA TEMELLERİ
BİLİŞİM TEKNOLOJİLERİNİN TEMELLERİ
EKRAN KARTLARI.
BİLGİSAYAR ÇEŞİTLERİ.
Ağ İşletim Sistemleri Öğr. Gör. Arif DAŞ.
RESİM VE RESİM DÜZENLEME İŞLEMLERİ
Bilgisayar Donanım ve Sistem Yazılımı
STORAGE BÜŞRA KARADENİZ
Swİtch çeşİtlerİ – GÖKÇE TENEKECİ.
İŞLETİM SİSTEMLERİ Bilişim Teknolojileri Araçlarında
Bilgisayar nedir? Bilgisayar; Zor ve karışık hesaplar yapabilen büyük miktarlardaki bilgileri depolama kapasitesine sahip otomatik bir cihazdır.
Temel Bilgisayar Bilgileri
PROBLEM ÇÖZME VE ALGORİTMALAR
Donanımlar Uzm. Murat YAZICI.
İşletim Sistemleri (Operating Systems)
Bilgisayar Mühendisliğine Giriş
Hız felaket mi? 32-Bit/64-Bit işlemciler üzerine örnek bir çalışma
İşletim Sistemleri (Operating Systems)
Hayvancılık İşletmelerinde Yönetim Prensipleri
Meriç ÇETİN Pamukkale Üniversitesi Bilgisayar Mühendisliği Bölümü
Bu konudaki her şeyi okuyun Microsoft SharePoint Haberler
Benzetim 11. Ders İmalat Yönetimde Benzetim.
B+-Ağaçları.
DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI
NİŞANTAŞI ÜNİVERSİTESİ
Temel Kavramlar Bilgisayar Çalışma Mantığı
Bilgisayar Bilimi Koşullu Durumlar.
Tezin Olası Bölümleri.
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar)
İşlemciler.
NİŞANTAŞI ÜNİVERSİTESİ
DAVRANIŞ BİLİMLERİNDE ARAŞTIRMA (YÜKSEK LİSANS)
Hata ayıklama da denilen programlama hatalarını bulma ve düzelme işlemine ne denir? a) Veri b) Yazılım c) Bug d) Debugging e) Donanım.
Veri Saklama Birimleri
Önbellek Hafızalar BIL-304: Bilgisayar Mimarisi
Bellek içi raporlama sistemleri için denormalizasyon uygulaması
Sunum transkripti:

İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI

Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini öğrenmek Çeşitli bilgisayar sistemlerini genel özellikleriyle öğrenmek Yaygın olarak kullanılan işletim sistemlerini tanımak

Ders Kapsamı ve İşleyiş Planı Giriş Temel Bilgiler Bilgisayar Sistemi ve İşleyişi İşletim Sistemi Kavramları Proses Yönetimi Proses ve Thread Senkronizasyon CPU Scheduling Deadlock Bellek Yönetimi Ana Bellek Sanal Bellek Depolama Yönetimi Büyük Depolama Yapısı Dosya Sistemi Ara Yüzü Dosya Sistemi İşleyişi Giriş-Çıkış Sistemleri Koruma ve Güvenlik Koruma Güvenlik İleri Konular Sanal Makineler Dağıtık Sistemler Vaka Çalışmaları Linux Windows Tarihi Perspektif

Depolama Aygıtları – Erişim Hızları ve Kapasiteleri Manyetik Disk < 10 TB ns 20 – 150 MB/s Katı Hal (Solid State) Diski < 1 TB – ns 500 MB/s Ana Bellek (RAM) < 64 GB 80 – 250 ns 1000 – 5000 MB/s Tampon Bellek (Cache) < 16 MB 0.5 – 25 ns 5000 – MB/s Register < 1 KB 0.25 – 0.5 ns – MB/s

Program – Proses – Thread Basit bir Thread Örneği Komut İkili (Binary) Onaltılı (Hexadecimal) LOAD a A LOAD b B SUM a,b F STORE a+b C Tanımlar Program Belirli işlemleri yapmak üzere tasarlanmış ve bir depolama biriminde saklanan çalıştırılabilir komut dizisi. Proses Programın ana belleğe yüklenmiş ve işleyen örneği. İlgili aktiviteler: Başlatma, sonlandırma, senkronizasyon, iletişim, sonsuz döngü sonlandırma. Thread Belli bir işi yürütmeyi amaçlayan küçük ölçekli proses.

İşletim Sistemi Nedir? Ne yapar? İşletim sistemi bilgisayar donanımı ile kullanıcı arasındaki etkileşimi sağlayan bir yazılım programıdır. Bilgisayar sistemini kullanıma uygun hale getirir. İşletim sistemi, kullanıcı düzeyindeki yazılım programlarının çalıştırılabilmesi için zemin oluşturur. Bilgisayar donanımının etkin şekilde kullanımını sağlar. İşletim sistemi bir kaynak paylaşımcısıdır. Etkin ve adil kullanım için çakışan kaynak kullanım isteklerini yönetir. İşletim sisteminin iki temel fonksiyonu mevcuttur: Soyutlama (Abstraction) / & Hakemlik (Arbitration)

İşletim Sisteminin Soyutlama & Hakemlik İşlevleri için Örnekler Intel ve AMD işlemcilerini destekleme. (Soyutlama) Uygulamalar arasında geçiş yapma. (Hakemlik) Uygulamalar için ayrılmış belleği paylaştırma. (Hakemlik) Video konferans uygulamasının tanımlı web kameralarını kullanmasını sağlama. (Soyutlama) Farklı sabit disklere erişim sağlama. (Soyutlama) Ağ üzerinden veri/mesaj gönderme ve alma. (Soyutlama & Hakemlik)

Bellek Yönetimi Amaçları ve Bellek Yönetimi Aktiviteleri Bellek organizasyonunun çeşitli yollarını öğrenmek Sayfalama(paging) ve bölümleme(segmentation) gibi bellek yönetim tekniklerini öğrenmek Sanal bellek, proses değiş-tokuşu (swapping), fragmentasyon gibi kavramları öğrenmek Şu anda belleğin hangi kısımlarının, hangi prosesler tarafından kullanıldığını tespit etmek Hangi proseslerin, proses parçalarının (thread) ya da verilerin belleğe yazılması ya da bellekten okunmasına karar vermek Gerekli olan durumlarda bellek ayırmak (allocation) ya da ayrılmış olan belleği geri almak (deallocation)

Komut İşletim Döngüsü (Fetch- Decode-Execute Cycle) ve Temel Kavramlar Komut bellekten getirilir. Komut çözülür, bu diğer ilişkili verilerin bellekten getirilmesini gerektirebilir. Komut işletilir. Bu işlem sonunda sonucun belleğe yazılması gerekebilir. Bellek yönetim birimi yalnızca bellek adreslerini bilir. Bunların hangi işlemler sonucunda oluştuğuyla ilgilenmez. Bellek ve register’lar sadece CPU tarafından doğrudan erişilebilen depolama birimleridir. Bellek adreslerini argüman olarak alan komutlar bulunurken, disk adreslerini alan komutlar bulunmaz. İşlenmesi gereken veri bellekte değil ise, işlenmek üzere belleğe yüklenmesi gerekir.

Bellek Yönetimi Temel Kavramlar İşlemci üzerinde yer alan register’lar genellikle bir saat frekansında CPU tarafından erişilebilir durumda olur.bir saat frekansında Birçok işlemci bir saat frekansında register içeriği üzerinde bir ya da daha fazla basit işlem yapabilir. Register için olan zaman dilimi bellek için geçerli değildir. Bir bellek çevriminin tamamlanması için genellikle birkaç saat frekansının geçmesi gerekir. Bu durumda, komut yürütürken işleyeceği verinin bulunmaması nedeniyle işlemcinin beklemesi gerekir. Bellek erişimi register erişimine göre oldukça yavaş olduğu için bu istenmeyen bir durumdur. Bunun için işlemci ile bellek arasında tampon bellekler (cache) kullanılır. Bellek yönetiminde önemli olan, sadece erişim zamanı değil aynı zamanda, kullanıcı programlarının sistem programları için ya da başka kullanıcı programları için ayrılan belleğe erişmekten korumaktır.

İşlemci Saat Frekansı İşlemci performansı günümüzde çoğunlukla yongalarının (chip) hızı ile verilmektedir. Buna işlemci saat frekansı denir. Teorik olarak saat frekansı büyük olan işlemcinin birim zamanda daha fazla işlem yaptığı söylenebilir. Ancak başka etkenler de vardır. Hz (Hertz) saniyenin tersidir. (1/s) 1 GHz = 10 9 Hz = Hz Örnek : 3.2 GHz Intel Core i5 3.2 GHz işlemci saniyede işlem döngüsüne girebilme kapasitesine sahiptir. Her bir işlem döngüsünde işlemci belli sayıda ( 32 / 64) bit değeri üzerinde değişklik yapabilir.

Bellek Yönetimi Proses Belleği Bellek yönetiminde her proses için ayrı bir bellek bloğu bulunur. Bunun için iki register’a ihtiyaç duyulur. İlgili prosesin bellek bloğunun başlangıç (base) ve bitiş (limit) adresleri bu register’larda tutulur. Kernel modda çalışan İşletim sistemi hem sistem hem de kullanıcı programları için ayrılmış bellek programlarına erişim hakkına sahiptir. Böylelikle bir problem olduğunda, müdahale edebilir durumda olur Limit : Base :

Bellek Adreslem e İşlemcinin ürettiği adresler mantıksal (sanal) adres olarak tanımlanır. Memory Address Register’a yüklenmiş olan adres (bellek biriminin okuduğu adres) ise fiziksel adres olarak tanımlanır. Base register – Relocation register olarak düşünülür. İşlemcinin ürettiği adrese bu değer eklenir ve fiziksel adres hesaplanır. Kullanıcı programı fiziksel adresi bilmez, sadece mantıksal adrese bilir, tüm işlemleri bu adres üzerinden yapar.

Dinamik Yükleme (Dynamic Loading) ve Bağlama (Linking) Dinamik yüklemede, bir alt program gerekli olduğunda yüklenir. Bütün alt programlar diskteki bir tabloda tutulur. Bir alt programa ihtiyaç duyulduğunda, çağrılır ve bellekteki yerleşim değişiklikleri tabloya bakılarak yürütülür. Dinamik yüklemede gerekli olan bellek miktarı fiziksel bellekle sınırlı değildir. Böylelikle bellek yönetiminde etkinlik sağlanır. Dinamik bağlama, sistem kütüphanelerinin çalışma zamanında belleğe yüklenmesi işlemidir.

Process Swapping (Proses Değiş- Tokuşu) Bir prosesin yürütülebilmesi için belleğe yüklenmiş olması gerekir. Bununla birlikte, proses ikincil bir depolama biriminde tutulup, tekrar belleğe yüklenip işletilebilir. Swapping, belleğin yürütülen prosesler için yetmediği zamanlarda kullanılan bir yöntemdir. Yüksek öncelikli prosesler belleğe yüklendiğinde, düşük öncelikli olanlar geçici olarak diske yazılıp, öncekiler sonlandırıldığında tekrar belleğe yüklenip işletilirler. Swapping işleminin dezavantajı, disk erişim hızının belleğe göre oldukça düşük olmasıdır. Eğer çok sayıda swapping işlemi olursa, bu durum kullanıcıya yavaşlama olarak yansır.

Contiguous (Bitişik-düzen Bellek Ayrımı Bellek yönetiminde, sistem proseslerine ve kullanıcı proseslerine ayrılan bellek blokları bulunur. Bitişik düzen bellek ayrımında, kullanıcı prosesleri için bloklar ardışık hücrelerin birleşiminden oluşur. Bitişik düzen bellek ayrımı, etkin bir yöntem değildir. Bu yöntem kullanıldığında, bellekte atıl kapasite oluşurken, bazı prosesler için gerekli alan ayrılamadığından performans problemleri yaşanma olasılığı artar.

Memory Paging (Bellek Sayfalama) Paging, prosesler için ayrılan bloklara ait hücrelerin bitişik olma zorunluluğunu ortadan kaldıran bir yöntemdir. Paging yönteminde, bir sayfa tablosu bulunur. Prosese ait ilgili kısmın adresi bu tabloda tutulur ve bu tablo okunarak erişilir. Sayfalamada bellek erişimi olduğu için hız oldukça önemli bir faktördür. Her işletim sistemi kendi sayfalama yöntemine sahiptir. Performans problemi yaşanmaması açısından, çoğunlukla sayfa bilgilerini tutan özel register’lar kullanılır. Günümüzde kullanılan sistemlerde iki ya da 3 seviyeli sayfalama tabloları kullanılabilmektedir. Mantıksal Bellek Sayfa 0 Sayfa 1 Sayfa 2 Sayfa 3 Sayfa Tablosu Fiziksel Bellek 0 1Sayfa 0 2 3Sayfa 2 4Sayfa Sayfa 3

Bellek Fragmantasyonu (Fragmentation) Bellek üzerinde bulunan ancak bitişik düzende olmayan kullanılabilir boş alanlara (Dış Fragmentasyon) denilir. Bellek üzerinde herhangi bir proses için ayrılmış bellek bloğundaki kullanılmayan boş alan olarak tanımlanır. (İç Fragmentasyon) Prosesler, bellek üzerinde daha büyük boyutlu bloklara taşınarak boş alanlar kullanılabilir hale getirilir. Proses 1 Proses 2 Proses 3 Proses 4 İşletim Sistemi Global Değişkenler Dinamik Değişkenler Metin Kod BellekProses 3

Belllek Bölümleme (Segmentation) Bölümleme (ya da segmentasyon) belleği etkin kullanmak için başvurulan bir yöntemdir. Birçok güncel sistemde bölümleme(segmentation) ve sayfalama(paging) birlikte kullanılmaktadır. Kullanıcı programı, ana program, global değişkenler, metin, dinamik değişkenler gibi mantıksal segmentlere ayrılır. Her bir segmente ait adres ve boyut bilgisi bir tabloda tutulur. Gerektiğinde erişilerek kullanılır. Ortak kullanılan segmentler olabilir. Örneğin, birden çok web sayfası açıldığında metin bilgileri ortak bir segmentten okunarak işlenir. Global Değişkenler Dinamik Değişkenler Metin Kod Proses 3

Bellek Koruma (Memory Protection) Bellek koruma işlemi, yetkili olmayan bir prosesin bir bellek alanına erişmemesini sağlamak için kullanılan yöntemdir. Bellek koruma, genellikle segmentasyon ile birlikte yapılır. Her segmentin adres ve boyutunun tutulduğu tabloda ayrıca o segmente erişimin mümkün olup olmadığı ( valid / invalid), o segmente dair okuma (read), yazma (write), çalıştırma(execute) işleminin yapılıp yapılamayacağı tanımlanır. Eğer, segmentasyon tablosunda tanımlı izinler dışında bir erişim girişimi olduğu taktirde sistem bir hata üretir ve işlemci çalışması sonlandırılır.

Faydalı Bağlantılar Bellek Segmentasyonu Bellek Sayfalama Bellek Yönetimi Sanal Bellek