İşletim Sistemleri Operation Systems Fon müziği
Bu derste, İşletim sistemleri mimarisi, İşletim sistemi katmanları ve işlevleri, İşletim sistemlerinin işlevleri, İşlem yönetimi, İşlem kontrol blokları, İşlem durum algoritmaları Bellek yönetimi, Bellek yöneticisinin görevleri Sanal Bellek (virtual memory) Sayfalama (paging)
İşletim Sistemleri Mimarisi Modern bilgisayar sistemleri Von Neumann ilke ve bileşenlerine sahiptir. Von Neumann bileşenlerine sahip bilgisayar sistemlerinde merkezi işlem birimi, ana bellek ve giriş/çıkış birimlerinden oluşmaktadır. İşletim sistemlerinin temel amaç bu kaynakların en verimli ve etkin biçimde kullanılmalarını sağlamaktır.
Aritmetik ve Mantık Birimi Von Neumann Mimarisi Merkezi İşlem Birimi Donanım Aygıtları Aritmetik ve Mantık Birimi Ana Bellek Kontrol Birimi Adres yolu Veri yolu
İşletim Sistemleri Mimarisi İşletim sistemlerini de daha önce; tek kullanıcılı (single user), çok kullanıcılı (multi user), tek işlemli (single tasking) ve çok işlemli (multi tasking) olarak sınıflamıştık. Tek kullanıcılı ve tek işlemli yapılarda işletim sisteminin görevleri daha basit bir düzenekte gerçeklemektedir. Ancak çok işlemli ya da çok kullanıcılı yapılarda işletim sistemi daha karmaşık bir organizasyona sahiptir. Bu yaklaşımla; işletim sistemlerinin 3 katman ve işletim sistemlerinin temel olarak 4 işlevi vardır. İşletim sistemlerinin katmanları sırasıyla; 1. Kabuk (Shell) 2. Sistem Çağrıları (System Calls) 3. Çekirdek (Kernel)
İşletim Sistemlerinin Katmanları Kabuk (Shell): İşletim sisteminin kullanıcıya gözüken yüzüdür. Bir çok kaynakta kabuk, komut yorumlayıcısı olarak ta adlandırılmaktadır. Bir bakıma kullanıcı ile çekirdek arasındaki arabirim olarak da tanımlamak olanaklıdır. Bilgisayar açıldıktan bir süre sonra komut satırı (prompt) görüntülenir. Kullanıcı tarafından komut satırına girilen komutlar bilgisayar tarafından işleme konulur. İşte bu nokta da kabuk (shell) olarak adlandırı lan yazılım devreye girer. Öncelikle komutun geçerliliğini inceler, kullanıcının ne yapmak istediğini çözümler ve bu iş için gerekli olan programları belleğe yükler.
Kabuk…
Çekirdek
Çekirdeğin İşlevleri Belleği yönetmek, Bilgisayara ulaşımları kontrol etmek, Dosya sistemini oluşturup, korumak, İnterruptları (kesme) kullanmak, Hataları kontrol etmek, Girdi-çıktı birimlerini çalıştırmak, Bilgisayarın kaynaklarını (işlemci, girdi-çıktı birimleri gibi...) kullanıcılar arasında dağıtmak. Kesmeler bir programın daha önemli başka bir görevin yerine getirilmesi için kesilmesine izin veren bir mekanizmadır.
İşletim Sisteminin İşlevleri 1) İşlem Yönetimi (Process Management) 2) Bellek Yönetimi (Memory Management) 3) Dosya Yönetimi (File Management) 4) Giri/Çıkış Yönetimi (I/O Management) İşlem Yönetimi Dosya Yönetimi Bellek Yönetimi Aygıt Yönetimi
İşlem Yönetimi (Process Management) Şu soruları cevaplar; İşlemlerin kaynaklara ulaşması sırasında nasıl bir kaynak yalıtımı yapacağı, Bir kaynağı paylaşması gereken birden fazla işlem olduğunda hangi politikaları kullanarak bu kaynağı paylaştıracağı Bunları yaparken de bellek yönetimi ile birlikte çalışarak belleğin bu işlemler, iş parçacıkları arasında paylaştırılmasını sağlar.
İşlem Yönetimi (Process Management) Birçok işletim sistemi işlem ve iş parçacığı (Thread) ve kaynak yönetimini birlikte ele almaktadır. İş parçacığı, bilgisayarda en düşük kaynağa ihtiyaç duyan bir program parçasıdır. Genellikle bir işlem ile birlikte kullanılır. İlgili işleme ayrılmış disk alanı, dosyalar, bellek gibi kaynaklarını kullanarak çalışır. Çoklu kullanım (multithreading) ise bir işlemin birden fazla iş parçacığına bölünerek aynı anda çalıştırılmasıdır. Bir işlem birden fazla iş parçacığından oluşmaktadır.
İşlem Yönetimi (Process Management)
İşlem Kontrol Blokları
İşlem Kontrol Blokları
İşlem Durum Algoritmaları
İşlem Durum Algoritmaları
Bellek Yönetimi (Memory Management)
Bellek Yönetimi (Memory Management) Bellek yönetimi işlem yönetimi ile birlikte çalışarak ana bellekte işlemlerin yerleşimini sağlamaktadır. Her işlem bir bellek bölgesi istemekte ve bellek yönetimi de bu işlemlerin çalışması için kaynak yalıtımını da sağlayarak gerekli bellek bölümünü ayırmaktadır. Modern bellek yönetimleri sanal bellek (virtual memory) sağlayarak fiziksel bellekten çok daha büyük bir bellek alanının kullanılmasını sağlamaktadır. Eğer işletim sistemi sanal belleği destekliyorsa bellek yönetiminin bir kısmı aygıt ve dosya yönetimleri ile birlikte çalışarak belleği yönetir.
Bellek Yöneticisin Görevleri
Sanal Bellek (Virtual Memory)
Sayfalama (Paging)
Sanal Bellek Algoritmaları
Ödev