İşletim Sistemleri. Dr. Binnur Kurt Omega Eğitim ve Danışmanlık İşletim Sistemleri

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "İşletim Sistemleri. Dr. Binnur Kurt binnur.kurt@gmail.com. Omega Eğitim ve Danışmanlık http://www.omegaegitim.com. İşletim Sistemleri"

Transkript

1 İşletim Sistemleri Dr. Binnur Kurt Omega Eğitim ve Danışmanlık 1 S a y f a

2 İçindekiler Kabuk 3. Prosesler 4. İplikler 5. Prosesler Arası İletişim 6. İş Sıralama 7. Ölümcül Kilitlenme 8. Çok İplikli Programlama 9. Bellek Yönetimi 10. Dosya Sistemi 11. Socket Haberleşme 2 S a y f a

3 BÖLÜM 1 Bölümün Amacı Bölüm sonunda aşağıdaki konular öğrenilmiş olacaktır: İşletim sistemi ile ilgili temel kavramlar ve tanımlar İşletim sistemlerinin özellikleri İşletim sistemi mimarileri 3 S a y f a

4 1.1 Giriş Bilgisayar mühendisliği açısından temel olarak iki sistemden söz edebiliriz: İş Sistemleri ve Bilişim Sistemleri (Şekil-1.1). İş sistemleri iş süreçlerinden oluşur. Bu süreçler şirkete para kazandıran, borsadaki değerini arttıran faaliyetler olarak düşünülebilir. İş süreçlerinin sahibi, bu süreçleri şirketin verimliliğini, servis kalitesini, kaynak ve kapasite kullanımını arttıracak şekilde ya değiştirmek ya da yenilerini eklemek ister. Bilişim sistemlerinin görevi iş süreçlerinde dolaşan verileri alıp işleyerek, karar verme süreçlerine destek olmak, maliyetleri düşürerek verimliliği artırmak ya da işlerin insan etkileşimi olmaksızın akışını sağlayarak otomasyonu sağlamak olabilir. İş Sistemleri Bilişim Sistemleri Şekil-1.1 İş ve Bilişim Sistemleri Bilişim sistemleri donanım ve yazılım alt sistemlerinden oluşmaktadır (Şekil-1.2). Donanım alt sisteminde fiziksel olarak dokunabileceğimiz, Merkezi İşlem Birimi (MİB), Bellek, Ekran Kartı, Disk, Giriş/Çıkış cihazları gibi bileşenler yer alır. MİB uygulamaların çalışabilir kodlarının işletildiği yerdir. Günümüz modern işlemcileri uygulamaları hızlı çalıştırmak için birçok teknik kullanır. Bu tekniklere örnek olarak, sıra-düzensiz çalıştırma, dallanma kestirimi, birden fazla hesaplama birimi bulundurma gibi yöntemler verilebilir. Bellek uygulamanın durumunun geçici olarak saklandığı alandır. Verilerin işlenebilmesi için MİB içindeki saklayıcılara taşınması gerekir. Bellek MİB içindeki saklayıcılara göre bin kat daha yavaş erişime sahiptir. Bu yavaşlığı gizlemek için işlemciler, cep bellek olarak adlandırılan yapılar içerir. Katmanlı bir yapıya sahip cep belleklerden L1 ve L2 olarak adlandırılan iki adet seviyede bellek bulunur. L2 bellek kapasite olarak L1 den büyüktür. Buna karşılık olarak L1 bellekler L2 belleklere göre çok daha hızlıdır. Genel ilke olarak, MİB deki saklayıcılardan belleğe doğru ilerledikçe kapasite artar, buna karşılık olarak erişim süreleri ise uzar (Şekil-1.3). 4 S a y f a

5 K 1 K 2 K n Uygulamalar (İş sıralayıcı, Bellek Yönetimi, Kullanıcı Yönetimi, G/Ç Yönetimi) Donanım (MİB, Bellek, Ekran Kartı, Disk, G/Ç Cihazları) Şekil-1.2 Donanım-Yazılım Sistemleri Hız Saklayıcı L1, L2 Kapasite Ana Bellek swap (Disk) Şekil-1.3 Bellek Hiyerarşisi Yazılım alt sistemi ise donanım üzerine kuruludur ve farklı mimarilerde tasarlanmış olabilir. Yazılım alt sisteminin en önemli parçasını işletim sistemi oluşturur. İşletim sisteminin temel görevi sistem kaynaklarını kullanıcılar ve uygulamalar arasında paylaştırmaktır (Şekil-1.4). Sistem kaynaklarından en önemlisi işlemcidir. İşletim sisteminde çalışan uygulamaları proses olarak adlandırıyoruz. İşletim sistemi işlemciyi prosesler arasında zamanda paylaştırır. İşletim sisteminin en önemli bileşeni çekirdektir. Çekirdek çok sayıda servisten oluşur: İş sıralayıcı, bellek yöneticisi, kullanıcı yöneticisi, giriş/çıkış yöneticisi. İş sıralayıcının görevi işlemciyi prosesler arasında zamanda paylaştırmaktır. Farklı makinalarda farklı kapasitelerde fiziksel bellek bulunabiliir ve bu fiziksel bellekler farklı bölmelere yerleştirilmiş olabilir. Bellek yöneticisinin görevi, sanki tüm bellek bölmeleri doluymuş gibi bir sanal bellek uzayı oluşturmak ve uygulamaların bu sanal belleği kullanmalarını sağlamaktır. Uygulamaların adres yoluna çıkardıkları sanal adresleri fiziksel adreslere donanımdan destek alarak dönüştürmekten yine bellek yöneticisi sorumludur. Kullanıcı için, örneğin, e-posta gönderip almak için doğrudan donanıma erişmek çok karmaşıktır. Çekirdek donanımı çevreleyerek, bu karmaşıklığı bir ölçüde gizler. Ancak hala e-posta gönderip almak için çekirdek karmaşıktır. Uygulamalar çekirdekle sistem çağrıları aracılığı ile konuşur. Sıradan kullanıcı için sistem çağrıları oldukça karmaşıktır. Bu karmaşıklığı kullanıcıdan gizlemek için çekirdeği çevreleyen kabuk olarak adlandırılan 5 S a y f a

6 bir katman yer alır. Kabuğun görevi kullanıcıdan aldığı komutları çekirdeğin anlayacağı bir dizi sistem çağrısına dönüştürmektir. Çok sayıda kabuk yazılımı bulunur: Sh (Bourne Shell), Bash (Bourne Again Shell), Csh (C Shell), Tcsh (TC Shell), Zsh (Z Shell), Ksh (Korn Shell). Bunlar arasında hız, güvenlik seviyesi, programlama yetenekleri gibi farklılıklar bulunur. Ama sıradan bir kullanıcı için bile e-posta alıp göndermek için bile kabuk çok karmaşıktır. Kabuğu da çevreleyen bir uygulama katmanı bulunur. Uygulama katmanında örneğin e-posta alıp göndermek için e-posta istemcisi (örneğin Thunderbird) bulunur. Kullanıcı bu programı kullanarak e-posta işlemlerini gerçekleştirir. 1.2 Türleri Şekil-1.4 nin Katmanlı Mimarisi Farklı donanım platformları bulunur. Bu platformlar üzerinde çalışan uygulamaların gereksinimleri biri birinden farklılık gösterir. Bu farklı ihtiyaçlara cevap verebilmek için işletim sistemleri özelleşmiştir: Anaçatı işletim sistemleri Sunucu işletim sistemleri Çok işlemcili işletim sistemleri Kişisel bilgisayar işletim sistemleri Gerçek zamanlı işletim sistemleri Gömülü işletim sistemleri Akıllı-kart işletim sistemleri Anaçatı İşletim Sistemleri Yoğun Giriş/Çıkış işlemi gerektiren çok sayıda görev çalıştırmaya yönelik tasarlanmış işletim sistemleridir. Üç tür temel hizmeti yerine getirirler: 1. Yığın işlem çalıştırma kipi 6 S a y f a

7 Yığın işlemler etkileşim gerektirmeyen, çoğu zaman periyodik olarak gerçekleştirilen işlemleri kapsar. Örnek olarak bir sigorta şirketindeki sigorta tazminatı isteklerinin işlenmesi verilebilir. 2. Atomik (transaction) İşlemler Çoğu zaman bir iş sürecini oluşturulan adımların tamamının başarılı olmasını ya da adımlardan biri başarısız olursa hiçbir adımın çalıştırılmamasını isteriz. Bu işlemlerin süresinin kısa olması istenir. Örneğin; seyahat organizasyonu sürecinde otel rezervasyonu, uçak bileti rezervasyonu ve araç kiralama adımlarının atomik olması istenir. Bu adımlardan herhangi biri başarısız olursa uçak bileti ve otel rezervasyonun ve araç kiralama işlemlerinin hiçbirinin yürütülmemesi istenir. 3. Zaman paylaşımlı çalışma Burada birden fazla uzaktan bağlanan kullanıcının sistemde iş çalıştırmasına izin veren sistemlerdir. Örneğin; IBM System z9 sistemi Sunucu İşletim Sistemleri Bu tür sistemler sunucu makinalar üzerinde çalışır. Bu tür sunucuların çekirdek sayıları ve bellek kapasiteleri yüksektir. Bilgisayar ağı üzerinden çok sayıda kullanıcıya hizmet verebilir. Hem donanımı hem de yazılımı paylaştırma yeteneğine sahiptir. Yazıcı hizmeti, dosya paylaştırma, web erişimini örnek olarak verebilir. Bu tür işletim sistemlerine Windows Server 2012, Red Hat Enterprise Linux, AIX, Solaris işletim sistemleri örnek olarak verebiliriz Çok İşlemcili İşletim Sistemleri Birden fazla işlemcili bilgisayar sistemleridir. Amaç bilgi işleme gücünü arttırmaktır. İşlemcilerin bağlantı türüne göre farklı isimler alabilirler: a. Paralel Sistemler: Biri birine bağlı, birden fazla bilgisayardan oluşan sistemlerdir. Bu bilgisayarlar, biri birleri ile özel yüksek bant genişliğine sahip ara bağlaşım sistemleri üzerinden konuşurlar. b. Çok İşlemcili Sistemler: Aynı anakarta bağlı birden fazla işlemcinin olduğu sistemlerdir. Temel olarak sunucu işletim sistemlerine benzer tasarım hedeflerine sahip olsalar da işlemciler arası bağlaşım ve iletişim için ek özelliklere ihtiyaç duyarlar Kişisel Bilgisayar İşletim Sistemleri Kullanıcıya etkin ve kolay kullanılır bir arayüz sunmayı amaçlayan ve genellikle ofis uygulamalarına yönelik olarak kullanılan işletim sistemleridir. Windows 7, Fedora, MacOS i örnek olarak verebiliriz Gerçek Zamanlı İşletim Sistemleri Gerçek zamanlı işletim sistemlerinde görevlerin tamamlanması üzerinde bir zaman kısıtı bulunur. Örneğin endüstriyel kontrol sistemlerinde, görevin belirli bir sürenin sonunda tamamlanması gerekir, bu sürenin sonunda tamamlanmasının bir değeri yoktur. Yine endüstriyel kontrol sistemlerinde ya da askeri sistemlerde toplanan verilerin sisteme verilerek en kısa sürede bir yanıt üretilmesi istenir. Gerçek zaman 7 S a y f a

8 işletim sistemlerine örnek olarak VxWorks ( ve QNX Neutrino ( ve GİS ( verilebilir. İki tür gerçek zamanlı sistem bulunur: i. Katı-gerçek-zamanlı (=Hard real-time) Zaman kısıtlarına uyulması zorunludur. Araba üretim bandındaki üretim robotları buna örnek olarak verilebilir. ii. Gevşek-gerçek-zamanlı (=Soft real-time) Bazı zaman kısıtlarına uyulmaması kabul edilebilir. Örnek olarak çoğul ortam sistemleri verilebilir Gömülü İşletim Sistemleri Kısıtlı işlemci ve bellek kapasitesine sahip cihazlar için geliştirilmiş işletim sistemleridir. Akıllı televizyon, otomobiller, tıbbi görüntüleme cihazları, tüketici elektroniğinde yoğun olarak kullanılır. Kullanılan cihaza bağımlı olarak basit ya da karmaşık işlevlere sahip olabilir Akıllı Kart İşletim Sistemleri En küçük işletim sistemi türüdür. Kredi kartı boyutlarında, üzerinde işlemci olan kartlar üzerinde çalışır. Çok sıkı işlemci ve bellek kısıtları vardır. Bazıları tek işleve (örneğin, elektronik ödeme sistemleri) yönelik olarak, bazıları ise birden fazla işlev içerebilecek şekilde tasarlanmışlardır. Çoğunlukla özel firmalar tarafından geliştirilen özel sistemlerdir. Java Card ise java tabanlı bir çözüm sunar (Şekil-1.5). Applet olarak adlandırılan bir tür Java uygulaması yüklenerek çalıştırılırlar. Bazı kartlar birden fazla Applet çalıştırabilir. Java Card Sanal Makinası çoklu-programlama, iş sıralama, kaynak yönetimi ve koruması sağlar. Applet Applet Applet Applet Üretici Eklentileri Java Card Çatısı ve API Java Card Sanal Makinası Kart Şekil-1.5 Java Card platformu 8 S a y f a

9 1.3 İşletim Sistemleri Yapıları Günümüz modern işletim sistemlerine gelinceye kadar işletim sistemleri farklı mimarilerde tasarlanmışlardır. Şimdi bu mimarilere bir göz atacağız: Monolitik Çekirdek Mimarisi Mikro Çekirdek Mimarisi Katmanlı Çekirdek Mimarisi Sanal Makina Mimarisi Nesneye Dayalı Mimari Monolitik İşletim Sistemleri Genel bir yapıları yoktur. İşlevlerin tamamı işletim sistemi içinde tamamı çekirdek modunda çalışan birer proses tarafından gerçeklenir (Şekil-1.6). Cihaz sürücüleri modüler olarak olabilir. Bu nedenle büyük bir çekirdeğe sahiptirler. İşlevleri gerçekleyen tüm prosedürler aynı seviyededir ve birbirleri ile etkileşimli çalışabilirler. Uygulamalar kullanıcı modunda çalışır ve çekirdeğin verdiği servislere bir arayüz ya da sistem çağrıları üzerinden erişirler. Bu mimariye sahip işletim sistemlerine örnek olarak FreeBSD, Solaris, AIX, HP-UX işletim sistemleri verilebilir. Günümüz modern monolitik işletim sistemleri modülerdir. Bu servisler birer modül olarak çalışma zamanında yüklenebilir ya da kaldırılabilir. Böylelikle ihtiyaca göre çekirdeği oluşturan modüller seçilebilir ve daha küçük bir çekirdek oluşturulabilir. Linux da modüllerin bir listesini almak için lsmod komutu kullanılır: ~]$ lsmod Module Size Used by ip6table_filter ip6_tables ip6table_filter ebtable_nat ebtables ebtable_nat ipt_masquerade iptable_nat ipt_reject xt_checksum iptable_mangle iptable_filter cdrom sr_mod mptspi mptscsih mptspi mptbase mptspi,mptscsih scsi_transport_spi mptspi floppy pata_acpi ata_generic ata_piix vmwgfx S a y f a

10 ttm vmwgfx drm vmwgfx,ttm i2c_core i2c_piix4,drm dm_mirror dm_region_hash dm_mirror dm_log dm_mirror,dm_region_hash dm_mod dm_mirror,dm_log Burada, ilk sütun modülün adını, ikinci sütun modülün bellekte kapladığı alanın boyutunu ve son sütun ise hangi modüller tarafından kullanıldığını gösterir. Modüllerin bilgisi /proc/modules dosyasında yer alır. /proc dizini bellekte oluşturulan ve çekirdeğin doğrudan eriştiği özel bir dizindir. lsmod komutu bu dosyadaki bilgileri düzenli ve formatlı bir şekilde ekranda listeler. Modinfo komutunu kullanarak herhangi bir modül hakkında detaylı bilgi edinebiliriz: [root@server1 etc]# modinfo cdrom filename: /lib/modules/ el6uek.x86_64/kernel/drivers/cdrom/cdrom.ko license: GPL srcversion: B5F2D DFFB175E71 depends: intree: Y vermagic: el6uek.x86_64 SMP mod_unload modversions parm: debug:bool parm: autoclose:bool parm: autoeject:bool parm: lockdoor:bool parm: check_media_type:bool parm: mrw_format_restart:bool Normalde, çekirdek bir modülü gerektiğinde otomatik olarak yükler. Ancak biz de komut satırından modüllerin yüklenmesini ve kaldırılmasını sağlayabiliriz: [root@server1 ~]# lsmod grep nfs [root@server1 ~]# modprobe nfs [root@server1 ~]# lsmod grep nfs nfs fscache nfs lockd nfs sunrpc nfs,lockd [root@server1 ~]# modprobe -r nfs [root@server1 ~]# lsmod grep nfs [root@server1 ~]# Modülü yüklemek için modprobe komutunu kullanıyoruz. Kaldırmak için ise yine aynı komutu bu sefer r seçeneği ile çalıştırıyoruz. Her iki durumda da komutu parametre olarak yüklenecek ya da kaldırılacak modülün adını veriyoruz. Yukarıdaki örnekte nfs modülü elle eklenmiş ve daha sonra kaldırılmıştır. Yeni bir çekirdek 10 S a y f a

11 modülü kurmak için ise insmod komutu kullanılır. Bu şekilde eklenmiş bir modülü kaldırmak için rmmod komutu kullanılır. Kullanıcı Modu Uygulamalar Çekirdek Modu Sanal Dosya Sistemi, Kullanıcı Yöneticisi İş Sıralayıcı, Prosesler Arası Haberleşme Sanal Bellek Yöneticisi, Cihaz Sürücüleri,... Donanım Şekil-1.6 Monolitik Çekirdek Mimarisi Mikro Çekirdek İşletim Sistemleri Temel hizmetleri veren küçük bir çekirdeğe sahiptir (Şekil-1.7). Örneğin Minix işletim sistemi bu tür bir mimariye sahiptir ve 6,000 satır koddan oluşur. Bu hizmetleri veren prosesler çekirdek modunda çalışırlar. Diğer işlevleri gerçekleyen prosedürler kullanıcı modunda çalışırlar. Uygulamalar Kullanıcı Modu Cihaz Sürücüleri Sanal Dosya Sistemi Prosesler Arası Haberleşme Çekirdek Modu İş Sıralayıcı, Sanal Bellek Yöneticisi, Temel Proses Haberleşme Hizmeti Katmanlı İşletim Sistemleri Donanım Şekil-1.7 Mikro Çekirdek Mimarisi İşletim sistemi çekirdeği katmanlı bir yapıya sahiptir (Şekil-1.8). Her katman bir üst katmana hizmet verirken bir alt katmandan hizmet alır. Bu tür mimarinin en önemli kazanımı hata ayıklamanın kolay olmasıdır. Bu mimariye sahip örnek işletim sistemi olarak VAX/VMS ve Multics işletim sistemleri verebilir. 11 S a y f a

12 Kullanıcı Modu Çekirdek Modu Uygulamalar Sistem Servisleri Sanal Makina İşletim Sistemleri Dosya Sistemi Bellek ve G/Ç Yöneticisi İş Sıralayıcı Donanım Şekil-1.8 Katmanlı Çekirdek Mimarisi Her sanal makine donanım üzerinde koşar. İşletim sistemi birden fazla sanal makina sunabilir. Sanal makinaların her biri donanımın birebir kopyasıdır. Her sanal makinada farklı işletim sistemi olabilir. Örnek olarak, IBM S/370 ve Java Sanal Makinası verilebilir. Java denince genellikle akla ilk olarak Java programlama dili gelmektedir. Bu çok da yanlış sayılmaz. Ancak Java öncelikli olarak bir platformun adıdır. Bu platform bize Java programlama dilini kullanarak uygulama geliştirmek, geliştirdiğimiz bu uygulamayı dağıtmak ve en sonunda bu uygulamayı çalıştırmak için bir ortam sağlar. Üstelik bu platform tek de değildir. Java Standard Edition (SE), Java Enterprise Edition (EE), Java Micro Edition (ME), Gömülü Java, Java Card, Java TV gibi biri biriyle ilintili ama farklı platformlar/api ler bulunmaktadır. Java platformunun en güçlü bileşeni ise Java uygulamalarını çalıştıran Java Sanal Makinasıdır (JSM). Java uygulamaları JSM üzerinde çalışır. JSM satın alabileceğiniz, üretebileceğiniz bir işlemci tanımlar. Bu işlemcinin bir komut kümesi, yığın temelli adresleme kipleri, saklayıcı kümesi, yığın göstergesi, program sayacı ve bir bellek modeli vardır. JSM içinde uygulamamızın yürütme zamanındaki başarımını belirleyen iki önemli parça yer alır: JIT (Just-in-Time) Derleyici ve Çöp Toplayıcı (Garbage Collector). JIT derleyici bytecode ları JSM nin üzerinde çalıştığı platformun anlayacağı, örneğin Intel x86 kodlarına dönüştürür. Üstelik bunu yaparken devingen en iyileme de yapar. Bunun için uygulamanın basit bir kesitini (=profiling) alır. Bu kesit bilgisine göre onlarca en iyileme tekniğinden hangilerini uygulayacağına karar verir. Java geliştiricisi açık ve yalın kod yazmaktan sorumludur, bu kodun en yüksek başarımla çalıştırılmasından ise JIT derleyici sorumludur. JSM doğrudan işletim sistemi üzerinde koşabileceği gibi (Şekil-1.9 (a), (b) ve (c)), doğrudan donanım üzerinde de koşabilir (Şekil-1.9 (d)). 12 S a y f a

13 Java EE Application Java SE Application JVM (HotSpot, JRockit, Zing, J9, ) Java EE AS (GF, JBoss, WLS, WSphere, ) JVM (HotSpot, JRockit, Zing, J9, ) OS (Windows, Linux, Solaris, ) OS (Windows, Linux, Solaris, ) HW (CPU,GPU,Memory,HD, ) HW (CPU,GPU,Memory,HD, ) Java SE App. (a) Java SE App. (b) JRockit VE Virtual Edition WebSphere HE Hypervisor Edition JVM JVM Java SE App Java SE App OS OS JVM JVM... VM #1... VM #n VM #1 VM #n Virtualization (Baremetal) HW (CPU,GPU,Memory,HD, ) (c) Virtualization (Baremetal) HW (CPU,GPU,Memory,HD, ) (d) Nesneye Dayalı İşletim Sistemleri Şekil-1.9 Java Sanal Makinası Nesneye dayalı işletim sistemlerinde, işletim sistemi tasarımında, cihaz sürücülerinin, dosya sistemlerinin ve kullanıcı arayüzünün gerçeklenmesinde nesneye dayalı programlama yaklaşımındaki kullanılan tekniklerden yararlanılır. Nesneye dayalı programlamada paketleme, sınıf, nesne, kalıtım ve çok şekillilik mekanizmaları kullanılır. Çekirdeği oluşturan servisler birer nesne olarak çalışır. Uygulamalar bu nesnelere erişerek çekirdekten hizmet alırlar. Bu mimariye sahip örnek işletim sistemi olarak Windows ve IBM AS400 işletim sistemleri verebilir. 13 S a y f a

Bilgisayar İşletim Sistemleri BLG 312

Bilgisayar İşletim Sistemleri BLG 312 Bilgisayar İşletim Sistemleri BLG 312 İşletim Sistemlerine Giriş Bilgisayar Sistemi uygulama programları derleyici editör komut yorumlayıcı işletim sistemi makina dilinde programlar mikroprogram (ROM da)

Detaylı

Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr. Gölhisar Meslek Yüksekokulu

Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr. Gölhisar Meslek Yüksekokulu Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr Gölhisar Meslek Yüksekokulu Bilgisayarın Yapısı Donanım (Hardware): Bir bilgisayara genel olarak bakıldığında; Kasa, Ekran, Klavye, Fare, Yazıcı, Hoparlör,

Detaylı

Binnur Kurt binnur.kurt@ieee.org. İstanbul Teknik Üniversitesi Bilgisayar MühendisliM

Binnur Kurt binnur.kurt@ieee.org. İstanbul Teknik Üniversitesi Bilgisayar MühendisliM İşletim Sistemleri Binnur Kurt binnur.kurt@ieee.org İstanbul Teknik Üniversitesi Bilgisayar MühendisliM hendisliği i BölümüB İşletim Sistemleri Copyright 2005 1 Version 0.0.1 About the Lecturer BSc İTÜ,

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı Ders 7 LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 LINUX Yapısı LINUX işletim sisteminin diğer işletim sistemleri gibi kendine özgü bir yapısı vardır. LINUX yapısı ve bileşenleri aşağıdaki

Detaylı

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN Bilgisayar Mühendisliğine Giriş Yrd.Doç.Dr.Hacer KARACAN İŞLETİM SİSTEMLERİ Bilinen İşletim Sistemleri İşletim Sistemlerinin Görevleri İşletim Sistemlerinin Gelişim Evresi İşletim Sistemi Türleri İşletim

Detaylı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine

Detaylı

İŞLETİM SİSTEMLERİ. (Operating Systems)

İŞLETİM SİSTEMLERİ. (Operating Systems) İŞLETİM SİSTEMLERİ (Operating Systems) İşletim Sistemi Tanımı, Görevleri, Bilinen İşletim Sistemleri Çok Kullanıcılı Sistemler, Bellek Yönetim Birimi Linux ve Windows Ailesi, Bilinen İşletim Sistemleri

Detaylı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar) Öğr.Gör. Dr. Dr. Şirin KARADENİZ Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; Performans:

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA DİLİ Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Programlama Diline Giriş Java Platform Çeşitleri Java nın Kodlama ve Çalışma Adımları Java Derleyicisi, Java Yorumlayıcısı Java Çöp Toplayıcısı

Detaylı

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU Kernel çeşitleri

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU Kernel çeşitleri YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU agah.korucu@gmail.com Kernel çeşitleri Tek Parçalı Çekirdek (Monolithic Kernel) Mikro Çekirdek (Microkernel) Melez Çekirdek (Hybrid Kernel) Dış Çekirdek (Excokernel) Tek

Detaylı

İşletim Sistemleri. İşletim Sistemleri. Dr. Binnur Kurt Omega Eğitim ve Danışmanlık

İşletim Sistemleri. İşletim Sistemleri. Dr. Binnur Kurt Omega Eğitim ve Danışmanlık İşletim Sistemleri Dr. Binnur Kurt binnur.kurt@gmail.com Omega Eğitim ve Danışmanlık http://www.omegaegitim.com 1 S a y f a İÇİNDEKİLER 1. İşletim Sistemi 2. Kabuk 3. Prosesler 4. İplikler 5. İplikler

Detaylı

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Android e Giriş. Öğr.Gör. Utku SOBUTAY Android e Giriş Öğr.Gör. Utku SOBUTAY Android İşletim Sistemi Hakkında 2 Google tarafından geliştirilmiştir. Dünyada en çok kullanılan mobil işletim sistemidir. 2018 itibariyle Dünyada Android; %78.65,

Detaylı

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği İŞLETİM SİSTEMLERİNE GİRİŞ Von Neumann Mimarisi Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği mimariyi temel almaktadır. Merkezi İşlem Birimi Aritmetik ve Mantık Birimi Kontrol

Detaylı

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü EYLÜL 2012 İŞLETİM SİSTEMLERİ İÇERİK 2 2 Yazılım nedir? Yazılım türleri nelerdir? İşletim sistemi nedir? İşletim sisteminin özellikleri İşletim sistemleri Unix Linux Windows Mac OS Android Yazılım Yazılım(Software),

Detaylı

İşletim Sistemleri. Bilgisayar Mühendisliğine Giriş. Teknoloji Fakültesi / Bilgisayar Mühendisliği. Öğr.Gör.Günay TEMÜR

İşletim Sistemleri. Bilgisayar Mühendisliğine Giriş. Teknoloji Fakültesi / Bilgisayar Mühendisliği. Öğr.Gör.Günay TEMÜR İşletim Sistemleri Bilgisayar Mühendisliğine Giriş Teknoloji Fakültesi / Bilgisayar Mühendisliği Öğr.Gör.Günay TEMÜR İşletim sistemi (Operating System) Bir işletim sistemini orkestrayı yöneten bir maestro

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş İşletim Sistemleri ve Donanım İşletim Sistemlerine Giriş/ Ders01 1 İşletim Sistemi? Yazılım olmadan bir bilgisayar METAL yığınıdır. Yazılım bilgiyi saklayabilir, işleyebilir

Detaylı

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI 19.10.2015. 3 Yazılım Türleri

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI 19.10.2015. 3 Yazılım Türleri İÇERİK 2 BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI İşletim Sistemleri ÖĞR. GÖR. HASAN ALİ AKYÜREK Yazılım nedir? Yazılım türleri nelerdir? İşletim sistemi nedir? İşletim sisteminin özellikleri İşletim sistemleri

Detaylı

İŞ SIRALAMA. İş Sıralamanın Amaçları. İş Sıralama Türleri - 1. İş Sıralama. İş Sıralama Türleri - 2

İŞ SIRALAMA. İş Sıralamanın Amaçları. İş Sıralama Türleri - 1. İş Sıralama. İş Sıralama Türleri - 2 İş Sıralamanın Amaçları İŞ SIRALAMA İşleri zaman içinde işlemciye yerleştirmek Sistem hedeflerine uygun olarak: İşlemci verimi Cevap süresi (response time) Debi (throughput) 23 İş Sıralama İş Sıralama

Detaylı

Çekirdek Nedir? Ne yapar?

Çekirdek Nedir? Ne yapar? Çekirdek Nedir? Ne yapar? Erkan Esmer Nisan, 2014 İçindekiler 1 Giriş.................................................... 2 2 Çekirdek Tipleri.............................................. 3 2.1 Mikrokernel............................................

Detaylı

Veritabanı. Ders 2 VERİTABANI

Veritabanı. Ders 2 VERİTABANI Veritabanı Veritabanı Nedir? Birbiri ile ilişkili verilerin bir arada uzun süreli bulundurulmasıdır. Veritabanı bazen Veritabanı Yönetim sistemi veya Veritabanı Sistemi yerine de kullanılır. Gerçek dünyanın

Detaylı

BİT in Temel Bileşenleri (Yazılım-1)

BİT in Temel Bileşenleri (Yazılım-1) Ders 4 BİT in Temel Bileşenleri (Yazılım-1) BİLGİ & İLETİŞİM TEKNOLOJİLERİ 1 Yazılım, değişik ve çeşitli görevler yapma amaçlı tasarlanmış elektronik araçların, birbirleriyle haberleşebilmesini ve uyumunu

Detaylı

Küme Bilgisayarlar. Enabling Grids for E-sciencE. Onur Temizsoylu. Grid ve Küme Bilgisayarlarda Uygulama Geliştirme Eğitimi ODTÜ, Ankara

Küme Bilgisayarlar. Enabling Grids for E-sciencE. Onur Temizsoylu. Grid ve Küme Bilgisayarlarda Uygulama Geliştirme Eğitimi ODTÜ, Ankara Küme Bilgisayarlar Onur Temizsoylu ODTÜ, Ankara www.eu-egee.org EGEE and glite are registered trademarks İçerik Neden hesaplamada kümeleme? Kümeleme nedir? Yüksek kullanılabilirlik kümeleri Yük dengeleme

Detaylı

İşletim Sistemlerinin Tarihçesi. Bilgi Güvenliği Teknolojisi Ön Lisans Programı İŞLETİM SİSTEMLERİ. Öğr. Gör. Tuğba CANSU

İşletim Sistemlerinin Tarihçesi. Bilgi Güvenliği Teknolojisi Ön Lisans Programı İŞLETİM SİSTEMLERİ. Öğr. Gör. Tuğba CANSU İşletim Sistemlerinin Tarihçesi Ünite 1 Bilgi Güvenliği Teknolojisi Ön Lisans Programı İŞLETİM SİSTEMLERİ Öğr. Gör. Tuğba CANSU 1 Ünite 1 İŞLETİM SİSTEMLERİNİN TARİHÇESİ Öğr. Gör. Tuğba CANSU İçindekiler

Detaylı

İşletim Sistemleri (Operating Systems)

İşletim Sistemleri (Operating Systems) İşletim Sistemleri (Operating Systems) 1 İşletim Sistemleri (Operating Systems) Genel bilgiler Ders kitabı: Tanenbaum & Bo, Modern Operating Systems:4th ed., Prentice-Hall, Inc. 2013 Operating System Concepts,

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş İşletim Sistemlerinin Tarihçesi ve Genel Yapısı İşletim Sistemlerine Giriş - Ders02 1 İşletim Sistemi Tarihçesi İLK NESİL işletim SİSTEMLERİ (1945 1955) 1940 larda Howard Aiken,

Detaylı

ÖZGÜR YAZILIMLAR İLE J2EE

ÖZGÜR YAZILIMLAR İLE J2EE ÖZGÜR YAZILIMLAR İLE J2EE Buğra Çakır bugra@ibrahimcakir.com Seminer İçeriği 1. İki ve üç katmanlı yazılım mimarileri 2. Java ve J2EE platformu 3. Özgür yazılımlar ile J2EE 4. Eclipse, Lomboz ve JBoss

Detaylı

Yazılım Mühendisliğine Giriş 2018 GÜZ

Yazılım Mühendisliğine Giriş 2018 GÜZ Yazılım Mühendisliğine Giriş 2018 GÜZ 1 İşletim Sistemi (Operating System) 2 Unix İşletim Sistemi Unix AT&T çalışanları tarafından Bell Laboratuvarlarında 1969 yılında geliştirilmiştir. Farklı platformlar

Detaylı

İŞ SIRALAMA. İş Sıralama 6. İşletim Sistemleri

İŞ SIRALAMA. İş Sıralama 6. İşletim Sistemleri 6 İŞ SIRALAMA İş Sıralama Çok programlı ortamlarda birden fazla proses belirli bir anda bellekte bulunur Çok programlı ortamlarda prosesler: işlemciyi kullanır bekler giriş çıkış bekler bir olayın olmasını

Detaylı

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan BİLGİ TEKNOLOJİLERİ YÖNETİMİ EĞİTİM MODÜLLERİ Tarih Saat Modül Adı Öğretim Üyesi 01/05/2018 Salı Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan Bu dersin amacı, bilgisayar bilimlerinin temel kavramlarını

Detaylı

Bilgisayar Mimarisi Nedir?

Bilgisayar Mimarisi Nedir? BİLGİSAYAR MİMARİSİ Bilgisayar Mimarisi Nedir? Bilgisayar mimarisi, diğer mimariler gibi, bir yapı kullanıcısının ihtiyaçlarını belirleme ve bu ihtiyaçları ekonomik ve teknolojik kısıtlamalar dahilinde

Detaylı

Bilgisayar İşletim Sistemleri BLG 312

Bilgisayar İşletim Sistemleri BLG 312 Giriş Bilgisayar İşletim Sistemleri BLG 312 İplikler geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü vardır bazı durumlarda, aynı adres uzayında birden fazla akış kontrolü

Detaylı

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların bilgilerini saklamalarına, program yüklemelerine izin

Detaylı

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ BİLGİ İŞLEM MSGSU FİZİK BÖLÜMÜ DERS 1 Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ İŞLETİM SİSTEMİ OS(Operating System) İşletim sistemi temel olarak, belli girdileri alıp derleyen ve sonuçları üreten program

Detaylı

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır.

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır. Yazılım Mimarisi 1.Yazılım Mimarisi Nedir? Yazılım mimarisi geliştirilen uygumaların maliyetlerinin azaltılmasında önemli bir yer tutar. Örneğin MVC modeli kullanarak bir uygulama geliştiriyoruz ve arayüz

Detaylı

Temel Bilgisayar (Basic Computer) Yazılım (Software)

Temel Bilgisayar (Basic Computer) Yazılım (Software) Temel Bilgisayar (Basic Computer) Yazılım (Software) Yazılım (Software) Eğitim TV - egitimtv.biz - facebook.com/egitimtv 2 Yazılım Daha önce de bahsettiğimiz gibi; yazılım, bilgisayar üzerinde çalışan

Detaylı

Java Temel Özellikleri

Java Temel Özellikleri Java Temel Özellikleri Java Programlama Dili Java programlama dili şu anda dünyadaki en popüler programlama dillerinden biri haline gelmiştir. Java SUN bilgisayar şirketince elektrikli ev aletlerinin birbiriyle

Detaylı

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1

Görsel Programlama DERS 01. Görsel Programlama - Ders01/ 1 Görsel Programlama DERS 01 Görsel Programlama - Ders01/ 1 Takdim Planı Nesneye Dayalı Programlama Kavramı Nesne, Sınıf Kavramı Java Programlama Dili Java Programlama Dili Temel Özellikleri Java Sürümleri

Detaylı

Yazılım Mühendisliğine Giriş 5. Hafta 2016 GÜZ

Yazılım Mühendisliğine Giriş 5. Hafta 2016 GÜZ Yazılım Mühendisliğine Giriş 5. Hafta 2016 GÜZ 1 C Dili ve İşaretçiler C programlama dili programların bellek adresinde yüksek düzeyli dillerden daha düşük düzeyde yazılabilmesini sağlar. Kısaca İşaretçi

Detaylı

İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine

İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine İŞLETİM SİSTEMLERİNE GİRİŞ - 2 Kaynakların Paylaşımı (Resource Sharing) Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde paylaşılan kaynaklar

Detaylı

İşletim Sistemleri. B L M Mesleki Te r minoloji I I Ö ğ r e n c i S unumu

İşletim Sistemleri. B L M Mesleki Te r minoloji I I Ö ğ r e n c i S unumu İşletim Sistemleri 1 4011029 R. Serkan Ke s kin 1 401103 9 Ö zcan Akdora B L M4811 - Mesleki Te r minoloji I I Ö ğ r e n c i S unumu Nedir? Bilgisayar donanımını yöneten yazılımdır. Bilgisayar yazılımlarının

Detaylı

İşletim Sistemleri. Discovering Computers Living in a Digital World

İşletim Sistemleri. Discovering Computers Living in a Digital World İşletim Sistemleri Discovering Computers 2010 Living in a Digital World Sistem Yazılımı Sistem yazılımı, bilgisayar ve aygıtlarının çalışmasını kontrol eden ve sürdüren programlardan oluşur. İşle;m sistemleri

Detaylı

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

İŞLETİM SİSTEMLERİ. Enformatik Bölümü 2015 İŞLETİM SİSTEMLERİ İÇERİK 2 2 Yazılım nedir? Yazılım türleri nelerdir? İşletim sistemi nedir? İşletim sisteminin özellikleri İşletim sistemleri Unix Linux Windows Mac OS Android Yazılım Yazılım(Software),

Detaylı

Java 2 Micro Edition (J2ME)

Java 2 Micro Edition (J2ME) Java 2 Micro Edition (J2ME) Arş.Gör. Cenk ATLIĞ Bahar 2005-2006 Trakya Üniversitesi Bilgisayar Mühendisliği İçerik Giriş MIDP nedir? MIDP in Java 2 Platformundaki yeri Java 2 Platformunda cihazların kullanım

Detaylı

Açık Kaynak Kodlu Yazılım

Açık Kaynak Kodlu Yazılım Temel Kavramlar İşletim Sistemi Bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan, aynı zamanda diğer uygulama yazılımlarını çalıştırmaktan sorumlu olan sistem yazılımıdır.

Detaylı

Bitirme Ödevi Sunumu PLATFORM BAĞIMSIZ BENZETİM PROGRAMI. Danışman : Yrd.Doç.Dr. D Feza BUZLUCA Gökhan Akın ŞEKER

Bitirme Ödevi Sunumu PLATFORM BAĞIMSIZ BENZETİM PROGRAMI. Danışman : Yrd.Doç.Dr. D Feza BUZLUCA Gökhan Akın ŞEKER Bitirme Ödevi Sunumu BERKELEY RISC I işlemcisi İÇİN PLATFORM BAĞIMSIZ BENZETİM PROGRAMI Danışman : Yrd.Doç.Dr. D Feza BUZLUCA 0495 0639 Sunum Planı Ödev konusu hakkında Berkeley RISC I işlemcisi hakkında

Detaylı

ODTÜ Kampüs Izgara Hesaplama Uygulaması

ODTÜ Kampüs Izgara Hesaplama Uygulaması ODTÜ Kampüs Izgara Hesaplama Uygulaması Mete Özay, Tuğba Taşkaya Temizel Enformatik Enstitüsü ODTÜ Taslak Kampüs Izgara Hesaplama Mevcut Uygulamalar ODTÜ Kampüs Izgara Hesaplama Sistem Testleri ODTÜ Kampüs

Detaylı

ENF 100 Temel Bilgi Teknolojileri Kullanımı Ders Notları 2. Hafta. Öğr. Gör. Dr. Barış Doğru

ENF 100 Temel Bilgi Teknolojileri Kullanımı Ders Notları 2. Hafta. Öğr. Gör. Dr. Barış Doğru ENF 100 Temel Bilgi Teknolojileri Kullanımı Ders Notları 2. Hafta Öğr. Gör. Dr. Barış Doğru 1 Konular 1. Bilgisayar Nedir? 2. Bilgisayarın Tarihçesi 3. Günümüz Bilgi Teknolojisi 4. Bilgisayarların Sınıflandırılması

Detaylı

Kemalettin YıldY KADIR HAS UNIVERSITY. UNIX SYSTEM ADMINISTRATOR www.kemalettinyildiz.tk kemalettinyildiz@yahoo.com kemalettinyildiz@khas.edu.

Kemalettin YıldY KADIR HAS UNIVERSITY. UNIX SYSTEM ADMINISTRATOR www.kemalettinyildiz.tk kemalettinyildiz@yahoo.com kemalettinyildiz@khas.edu. Kemalettin YıldY ldız KADIR HAS UNIVERSITY BİLGİ İŞLEM MERKEZİ UNIX SYSTEM ADMINISTRATOR www.kemalettinyildiz.tk kemalettinyildiz@yahoo.com kemalettinyildiz@khas.edu.tr BSD BERKELEY SOFTWARE DISTRIBUTION

Detaylı

Bilgisayar İşletim Sistemleri BLG 312

Bilgisayar İşletim Sistemleri BLG 312 Prosesler Bilgisayar İşletim Sistemleri BLG 312 Prosesler ve Proses Yönetimi bilgisayar sisteminde birden fazla iş aynı anda etkin olabilir kullanıcı programı diskten okuma işlemi yazıcıdan çıkış alma

Detaylı

Java ve Linux. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006

Java ve Linux. Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006 Java ve Linux Bora Güngören Portakal Teknoloji bora@portakalteknoloji.com Akademik Bilişim 2006 09.02.2006 Sunum Planı Java Çalışma Ortamı POSIX uyumu ve Linux Java Toplum Süreci (JCP) Açık kaynak kodlu

Detaylı

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ Ders 10 LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ LINUX de Programlama LINUX işletim sistemi zengin bir programlama ortamı sağlar. Kullanıcılara sistemi geliştirme olanağı sağlar.

Detaylı

Giriş. geleneksel işletim sistemlerinde her prosesin. aynı adres uzayında birden fazla akış kontrolü gerekebilir

Giriş. geleneksel işletim sistemlerinde her prosesin. aynı adres uzayında birden fazla akış kontrolü gerekebilir 3 İPLİKLER Giriş geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel

Detaylı

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu 10-02-2007

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu 10-02-2007 Akademik Dünyada Özgür Yazılım Onur Tolga Şehitoğlu 10-02-2007 1 Özgür Yazılım Nedir? Neden Özgür Yazılım? 2 Masaüstü İşletim Sistemi Ofis Uygulamaları 3 Görüntüleme 4 Bilimsel Araçlar Octave SciLab R

Detaylı

EKLER EK 12UY0106-5/A4-1:

EKLER EK 12UY0106-5/A4-1: Yayın Tarihi: 26/12/2012 Rev. :01 EKLER EK 12UY0106-5/A4-1: nin Kazandırılması için Tavsiye Edilen Eğitime İlişkin Bilgiler Bu birimin kazandırılması için aşağıda tanımlanan içeriğe sahip bir eğitim programının

Detaylı

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay. PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011

Detaylı

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10 Yrd.Doç.Dr.Hacer Karacan İçerik Grafik Kullanıcı Arayüzü Uygulamaları AWT, Swing Arayüz Yerleşim Düzeni Temel GKA Bileşenleri Olay Yönetimi Olay Dinleyiciler Olay

Detaylı

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği İŞLETİM SİSTEMLERİNE GİRİŞ Von Neumann Mimarisi Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği mimariyi temel almaktadır. Merkezi İşlem Birimi Aritmetik ve Mantık Birimi Kontrol

Detaylı

MOBIL UYGULAMA GELIŞTIRME

MOBIL UYGULAMA GELIŞTIRME MOBIL UYGULAMA GELIŞTIRME PELIN YILDIRIM FATMA BOZYIĞIT YZM 3214 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Bu Derste Android Nedir ve Uygulama Temelleri Android Uygulama Bileşenleri

Detaylı

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması Sistem Programlama Sistem programlama bilgisayar mühendisliğinin bir alanı olup karmaşık sistemlerin ve bu sistemlerin parçalarının ile ilgilenir. İşletim Sistemlerinin Programlaması Giriş/Cıkış( I/O)

Detaylı

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması

JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması JAVA RMI ve Hibernate teknolojileri kullanılarak çok amaçlı bir yazılım altyapısı hazırlanması Hakan ALBAĞ Tahsin Barış AKAN Bitirme Projesi 05.06.2006 Giriş Ticari yazılımlarda ortak ihtiyaçlar Birden

Detaylı

Linux'ta Kabuk ve Kabuk Programlama

Linux'ta Kabuk ve Kabuk Programlama Linux'ta Kabuk ve Kabuk Programlama Kabuk Nedir? Kabuk, kullanıcı ile bilgisayar sistemi arasındaki bir yazılım katmanıdır. Kabuk, kullanıcının hareketlerini yorumlayıp, işletim sistemini ve uygulamaları

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Kullanıcıdan aldığı veri ya da bilgilerle kullanıcının isteği doğrultusunda işlem ve karşılaştırmalar yapabilen, veri ya da bilgileri sabit disk,

Detaylı

Linux e Giriş ve Dağıtımlar

Linux e Giriş ve Dağıtımlar Linux e Giriş ve Dağıtımlar Yrd. Doç. Dr. Murat Olcay ÖZCAN Linux Nedir? Linux, UNIX benzeri, serbestçe dağıtılabilen, çok kullanıcılı, çok görevli ve güçlü bir işletim sistemidir. Linux un kalbi olan

Detaylı

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ Derleyen: Prof. Dr. Güngör BAL Bölüm 4 Yazılım: Sistemler ve uygulama yazılımı Prensipler ve Öğrenme hedefleri Sistemler ve uygulama yazılımı bireylerin ve organizasyonların

Detaylı

İŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür.

İŞLEMCİLER (CPU) İşlemciler bir cihazdaki tüm girdilerin tabii tutulduğu ve çıkış bilgilerinin üretildiği bölümdür. İŞLEMCİLER (CPU) Mikroişlemci Nedir? Mikroişlemci, hafıza ve giriş/çıkış birimlerini bulunduran yapının geneline mikrobilgisayar; CPU' yu bulunduran entegre devre çipine ise mikroişlemci denir. İşlemciler

Detaylı

Kabuk Programlama (Bash)

Kabuk Programlama (Bash) Kabuk Programlama (Bash) Erkan Esmer Ocak, 2013 İçindekiler 1 Giriş.................................................... 2 2 Kabuk(Shell)............................................... 3 3 Çekirdek(Kernel).............................................

Detaylı

SPARC v8 İŞLEMCİ SİMÜLASYONU

SPARC v8 İŞLEMCİ SİMÜLASYONU SPARC v8 İŞLEMCİ SİMÜLASYONU BİTİRME ÖDEVİ SUNUMU D a n ı ş m a n : Yrd. D oç. D r. F eza B U Z L U C A EZGİ ZÜMRÜT ULAŞ 040080194 Sunum Konuları 2 RISC İşlemciler Programlama Dili Seçimi SPARC v8 Yazılım

Detaylı

Servis olarak Altyapı

Servis olarak Altyapı Servis olarak Altyapı Servis olarak Altyapı (Infrastructure as a Servis, IaaS) fiziksel makineler, sanal makineler ve sanal depolama gibi temel kaynaklara erişebilmeyi sağlar. Bu kaynaklardan başka IaaS

Detaylı

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama BİL 542 Paralel Hesaplama Dersi Projesi MPJ Express Java Paralel Programlama Recep Ali YILMAZ 131419106 Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Yüksek Lisans Programı

Detaylı

Sanal Makineler ve Linux Konteynerlerin Performans Karşılaştırması

Sanal Makineler ve Linux Konteynerlerin Performans Karşılaştırması Sanal Makineler ve Linux Konteynerlerin Performans Karşılaştırması Emre Can YILMAZ 1, Recai OKTAŞ 2 1 Ondokuz Mayıs Üniversitesi, Fen Bilimleri Enstitüsü, Bilgisayar Mühendisliği Anabilim Dalı, Samsun

Detaylı

Bilgisayar Yazılımları

Bilgisayar Yazılımları Bilgisayar Yazılımları Yazılım Türleri Programlama Dilleri Bir işi bilgisayara yaptırmak ancak belirli kodların belirli bir sıra doğrultusunda kullanılması ile olanaklıdır. Kullanılan bu koda programlama

Detaylı

4. Bölüm Programlamaya Giriş

4. Bölüm Programlamaya Giriş 4. Bölüm Programlamaya Giriş Algoritma ve Programlamaya Giriş Dr. Serkan DİŞLİTAŞ 4.1. C# ile Program Geliştirme Net Framework, Microsoft firması tarafından açık internet protokolleri ve standartları

Detaylı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS İşletim Sistemleri BIL252 4 4+0 4 5 Ön Koşul Dersleri Yok Dersin Dili Dersin Seviyesi Dersin Türü Türkçe Lisans Zorunlu / Yüz Yüze Dersin

Detaylı

Tekir (Ön Muhasebe Yazılımı)

Tekir (Ön Muhasebe Yazılımı) Tekir (Ön Muhasebe Yazılımı) Tekir Nedir? Kullanılan Teknolojiler Nelerdir? Sistem Gereksinimleri Nelerdir? Merve Yalçın Ahmet Deniz Korkmaz Tekir nedir? Tekir, açık kaynak kodlu özgür bir muhasebe yazılımıdır.

Detaylı

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 KONU BAŞLIKLARI 1. Yazılım Mimarisi nedir? 2. Yazılımda Karmaşıklık 3. Üç Katmanlı Mimari nedir? 4. Üç Katmanlı Mimari

Detaylı

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ BİLGİSAYAR PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr.Caner KOÇ Ankara Üniversitesi Ziraat Fakültesi Tarım Makinaları ve Teknolojileri Mühendisliği Bölümü ckoc@ankara.edu.tr DERS KAYNAKLARI 1. A. Kadir GÜNEYTEPE:

Detaylı

Bilişim Teknolojilerine Giriş

Bilişim Teknolojilerine Giriş Bilişim Teknolojilerine Giriş Bilginin toplanması, işlenmesi, saklanması ve iletilmesini sağlayan teknolojilerin bütününe bilişim teknolojileri denir. Bilişim Teknolojisi Girilen verileri saklayan, işleyen,

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ İşletim Sistemlerine Giriş 2 Kaynakların Paylaşımı Öğr.Gör. Dr. Şirin KARADENİZ Kaynakların Paylaşımı Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde

Detaylı

İşletim Sistemi. BTEP205 - İşletim Sistemleri

İşletim Sistemi. BTEP205 - İşletim Sistemleri İşletim Sistemi 2 İşletim sistemi (Operating System-OS), bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan ve uygulama programlarını çalıştırmaktan sorumlu olan sistem

Detaylı

Giriş. İplik Modeli. geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var.

Giriş. İplik Modeli. geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var. Giriş 3 İPLİKLER geleneksel işletim sistemlerinde her in özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel ler gibi

Detaylı

Java Programlama Giriş

Java Programlama Giriş Java Programlama Giriş 2013-2014 Bahar Dönemi Mehmet Akif Ersoy Üniversitesi Teknik Bilimler Meslek Yüksekokulu Burdur 2014 Muhammer İLKUÇAR 1 Neden Java Programlama Platformdan bağımsızdır

Detaylı

EGE Üniversitesi Mühendislik Fakültesi Bilgisayar Müh. Bölümü 2013-2014 Öğretim Yılı Lisans Tezi Önerileri

EGE Üniversitesi Mühendislik Fakültesi Bilgisayar Müh. Bölümü 2013-2014 Öğretim Yılı Lisans Tezi Önerileri EGE Üniversitesi Mühendislik Fakültesi Bilgisayar Müh. Bölümü 2013-2014 Öğretim Yılı Lisans Tezi Önerileri Danışman Öğretim Üyesi: Kasım Sinan YILDIRIM 1) Tez Başlığı: Kablosuz Algılayıcı Ağlarında Hareketli

Detaylı

İşletim Sistemi Nedir?

İşletim Sistemi Nedir? İşletim Sistemi Nedir? İşletim sistemi, bilgisayar açılırken hafızaya yüklenen, bilgisayar donanım kaynaklarını yöneten ve çeşitli uygulama yazılımları için hizmet sağlayan genel amaçlı bir yazılımdır.

Detaylı

Proses. Prosesler 2. İşletim Sistemleri

Proses. Prosesler 2. İşletim Sistemleri 2 PROSESLER Proses Bir işlevi gerçeklemek üzere ardışıl bir program parçasının yürütülmesiyle ortaya çıkan işlemler dizisi Programın koşmakta olan hali Aynı programa ilişkinbirdenfazlaprosesolabilir. Görev

Detaylı

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI

TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI BARTIN ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ TEMEL BİLGİ TEKNOLOJİLERİ KULLANIMI 3. Hafta BİLGİSAYAR YAZILIMI Dr. Öğr. Üyesi Nesibe YALÇIN nesibeyalcin.wordpress.com BİLGİSAYAR

Detaylı

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2 1 Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2 Eclipse Mimarisi 4 Java Teknolojisine Genel Bir Bakış 6 Taşınabilirlik 6 Java Derleyicisi ve Bytecode 6 Java Sanal Makinası (Java Virtual Machine - JVM)

Detaylı

BM-311 Bilgisayar Mimarisi

BM-311 Bilgisayar Mimarisi 1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Mikro işlemler Fetch cycle Indirect cycle Interrupt cycle Execute cycle Instruction

Detaylı

08224 Sunucu İşletim Sistemleri

08224 Sunucu İşletim Sistemleri Ders Tanıtım Sunumu 08224 Sunucu İşletim Sistemleri Elbistan Meslek Yüksek Okulu 2013 2013 Bahar Yarıyılı 26-27 Şub. 2013 Öğr. Gör. Murat KEÇECİOĞLU 1980 li yıllarda ortaya çıkan Personal Computer sistemlerden

Detaylı

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu Linux Masaüstü Ortamı Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu Sunum İçeriği Genel Bilgiler Linux'a Yazılım Kurmak

Detaylı

EVRENSEL PCI RS-232 KARTI

EVRENSEL PCI RS-232 KARTI EVRENSEL PCI RS-232 KARTI Kullanıcı Kılavuzu DS-33002-1 Özellikler Sisteminizde bulunan Çoklu RS-232 seri portları çoğaltır Yüksek performanslı SUNIX 16C950 uyumlu yerleşik UART denetleyici. Yeşil bir

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş C Programlama Dr. Serkan DİŞLİTAŞ 1.1. C# ile Program Geliştirme.Net Framework, Microsoft firması tarafından

Detaylı

Bilgisayar, elektronik bir cihazdır ve kendi belleğinde depolanan talimatları sırasıyla uygulayarak çalışır. İşler. Bilgi İşlem Çevrimi

Bilgisayar, elektronik bir cihazdır ve kendi belleğinde depolanan talimatları sırasıyla uygulayarak çalışır. İşler. Bilgi İşlem Çevrimi Bilgisayar nedir? Bilgisayar, elektronik bir cihazdır ve kendi belleğinde depolanan talimatları sırasıyla uygulayarak çalışır. Veriyi toplar (girdi) İşler Bilgi üretir (çıktı) Bilgi İşlem Çevrimi 1 Bir

Detaylı

GÖMÜLÜ SİSTEMLER. Bilecik Şeyh Edebali Üniversitesi Gömülü Sistemler Ders notları-1

GÖMÜLÜ SİSTEMLER. Bilecik Şeyh Edebali Üniversitesi Gömülü Sistemler Ders notları-1 GÖMÜLÜ SİSTEMLER Bilecik Şeyh Edebali Üniversitesi Gömülü Sistemler Ders notları-1 Gömülü sistemler için farklı tanımlamalar yapmak mümkün olmakla birlikte genel olarak şu şekilde tanımlama yapabiliriz:

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA III Bilgi iletişim sistemi : Bilgi iletişim sistemi, dağıtık sistem içerisinde düğümler arasındaki iletişimi desteklemekle yükümlüdür. İletişim sistemi, iletişim ağı ile bağlanmış herhangi bir düğümün,

Detaylı

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım Yazılım Yazılım Bilgisayarlar üretildikleri anda içlerinde herhangi bir bilgi barındırmadıkları için bir işlevleri yoktur. Bilgisayarlara belirli yazılımlar yüklenerek işlem yapabilecek hale getirilirler.

Detaylı

BİLGİSAYAR ORGANİZASYONU

BİLGİSAYAR ORGANİZASYONU BİLGİSAYAR ORGANİZASYONU Donanım Bilgisayarın fiziksel bölümü Monitor, klavye, fare Entegreler, kartlar Kablolar Yazılım: Bilgisayarın mantıksal bölümü Programlar: Bilgisayarın gerçekleştireceği komutlar

Detaylı

08224 Sunucu İşletim Sistemleri

08224 Sunucu İşletim Sistemleri 08224 Sunucu İşletim Sistemleri Server Operating System Öğr.Gör. Murat KEÇECİOĞLU Elbistan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Şubat 2015 08224 Sunucu İşletim Sistemleri Server Operating

Detaylı

PROGRAMLAMA TEMELLERİ

PROGRAMLAMA TEMELLERİ PROGRAMLAMA TEMELLERİ 2.HAFTA Yazılım Yazılım, elektronik aygıtların belirli bir işi yapmasını sağlayan programların tümüne verilen isimdir. Bir başka deyişle var olan bir problemi çözmek amacıyla bilgisayar

Detaylı

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü 1 BİLGİSAYAR MİMARİSİ Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü http:// http:// Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/

Detaylı