Bölüm 4: Threads (İş Parçaları)

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

Download "Bölüm 4: Threads (İş Parçaları)"

Transkript

1 Bölüm 4: Threads (İş Parçaları) Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013

2 Bölüm 4: Threads (İş Parçaları) Genel bakış Çok çekirdekli programlama Çok iş parçalı modeller İş parçası kütüphaneleri Örtük iş parçalama İş parçalama sorunları OS örnekleri 4.2 Silberschatz, Galvin and Gagne 2013

3 Hedefler İş parçası kavramına giriş Pthreads, Windows ve Java thread kütüphaneleri için API lere bakış Örtük iş parçalama stratejilerini incelemek Çok iş parçalı programlama ile ilgili sorunları incelemek Windows ve Linux ta iş parçaları için var olan OS desteğini öğrenmek 4.3 Silberschatz, Galvin and Gagne 2013

4 Motivasyon Modern uygulamaların çoğu çok iş parçalıdır. İş parçaları uygulama içinde çalışır. Uygulamadaki birden fazla görev ayrı iş parçaları ile gerçekleştirilebilir. Görüntü yenileme Veri getirme Yazım denetimi Ağ isteğine yanıt verme Süreç oluşturma ağır, thread oluşturma hafif bir iş. Bu yolla kod basitleşir, verim artar. Çekirdekler (kernels) genellikle çok iş parçalıdır. 4.4 Silberschatz, Galvin and Gagne 2013

5 Çok İş Parçalı Sunucu Mimarisi 4.5 Silberschatz, Galvin and Gagne 2013

6 Faydalar Yanıt verebilirlik sürecin bir parçası engellense bile yürütme devam edebilir, özellikle UI için önemlidir Kaynak paylaşımı iş parçaları sürecin kaynaklarını paylaşır, bellek paylaşımı veya mesajlaşmadan daha kolay Maliyet süreç oluşturmadan daha ucuz, iş parçası değiştirme bağlam değiştirmeden daha az masraflı Ölçeklenebilirlik süreç çok işlemcili sistemlerden faydalanabilir 4.6 Silberschatz, Galvin and Gagne 2013

7 Çok Çekirdekli Programlama Çok çekirdekli (multicore) veya çok işlemcili (multiprocessor) sistemlerde programlama zorluğu çoktur: Etkinlikleri bölme Denge Veriyi bölme Veri bağımlılıkları Sınama ve hata ayıklama Parallellik sistemin aynı anda birden fazla iş yapabileceğini belirtir. Eşzamanlılık birden fazla işin ilerlemesini destekler. Tek işlemci/çekirdek, planlayıcı eşzamanlılık sağlar. 4.7 Silberschatz, Galvin and Gagne 2013

8 Çok Çekirdekli Programlama Paralellik türleri Veri parallelliği verinin alt kümelerini birden çok çekirdeğe dağıtır, hepsine aynı işlemi uygular. Görev parallelliği iş parçalarını çekirdeklere dağıtır, her iş parçası farklı işlem yapar. Thread sayısı arttıkça iş parçalama için mimari desteği de artar. CPU larda çekirdekler ve donanım threadleri bulunur. Oracle SPARC T4 8 çekirdeklidir, her çekirdekte 8 hardware thread vardır. 4.8 Silberschatz, Galvin and Gagne 2013

9 Eşzamanlılık vs. Parallellik Tek çekirdekli sistemde eşzamanlı yürütme: Çok çekirdekli sistemde paralellik: 4.9 Silberschatz, Galvin and Gagne 2013

10 Tek ve Çok İş Parçalı Süreçler 4.10 Silberschatz, Galvin and Gagne 2013

11 Amdahl Yasası Seri ve paralel bileşenlere sahip bir uygulama için ek çekirdeklerden kaynaklanan performans kazanımlarını ifade eder. S seri kısım N işlemci çekirdeği Yani, uygulama %75 paralel / %25 seri ise, 1 çekirdekten 2 ye geçiş hızı 1,6 katına çıkarır. N sonsuza giderken, hızlanma 1 / S e yaklaşır. Uygulamanın seri kısmı ek çekirdeklerle gelen performans kazanımını orantısız biçimde etkiler Silberschatz, Galvin and Gagne 2013

12 Kullanıcı Threadleri ve Çekirdek Threadleri Kullanıcı threadleri yönetim kullanıcı seviyesindeki thread kütüphanesi tarafından yapılır. Üç ana thread kütüphanesi: POSIX Pthreads Windows threads Java threads Çekirdek threadleri Çekirdek destekli Örnekler neredeyse bütün genel amaçlı OS ler: Windows Solaris Linux Tru64 UNIX Mac OS X 4.12 Silberschatz, Galvin and Gagne 2013

13 Çok İş Parçalı Modeller Many-to-One (Çoktan bire) One-to-One (Bire bir) Many-to-Many (Çoktan çoğa) 4.13 Silberschatz, Galvin and Gagne 2013

14 Many-to-One (Çoktan Bire) Birçok kullanıcı seviyeli thread tek çekirdek thread ine eşlenir. Bir thread in engellenmesi hepsinin engellenmesine yol açar. Birden çok thread çok çekirdekli sistemde paralel çalışamaz çünkü her an yalnızca biri kernel da olabilir. Bu modeli kullanan az sistem vardır. Örnekler: Solaris Green Threads GNU Portable Threads 4.14 Silberschatz, Galvin and Gagne 2013

15 One-to-One (Bire Bir) Her kullanıcı seviyeli thread bir çekirdek thread ine eşlenir. Kullanıcı seviyeli thread oluşturulunca çekirdek threadi de oluşur. Çoktan bire modelinden daha fazla eşzamanlılık vardır. Süreç başına thread sayısı bazen kısıtlanır (masraftan). Örnekler Windows Linux Solaris 9 ve sonrası 4.15 Silberschatz, Galvin and Gagne 2013

16 Many-to-Many (Çoktan Çoğa) Birçok kullanıcı seviyeli thread yine birçok çekirdek thread ine eşlenir. OS in yeterli sayıda çekirdek threadi oluşturmasına imkan verir. Solaris versiyon 9 öncesi Windows ThreadFiber package 4.16 Silberschatz, Galvin and Gagne 2013

17 İki Seviyeli Model Çoktan çoğa benzeri, ama kullanıcı thread inin çekirdek thread ine bağlanmasına izin verir. Örnekler IRIX HP-UX Tru64 UNIX Solaris 8 ve öncesi 4.17 Silberschatz, Galvin and Gagne 2013

18 Thread Kütüphaneleri Thread kütüphanesi programcıya thread oluşturma ve yönetme için API sunar. İki ana yolla gerçekleştirilir: Tamamen kullanıcı alanındaki kütüphane Çekirdek seviyeli kütüphane OS desteklidir Silberschatz, Galvin and Gagne 2013

19 Pthreads Kullanıcı veya çekirdek seviyesinde olabilirler. İş parçası oluşturma ve senkronlama için POSIX standardı (IEEE c) API Şartname (gerçekleştirim değil) API thread kütüphanesinin davranışını belirler, gerçekleştirim kütüphanenin geliştirilmesine bırakılır. UNIX tabanlı işletim sistemlerinde yaygındır (Solaris, Linux, Mac OS X) 4.19 Silberschatz, Galvin and Gagne 2013

20 Pthreads Örneği 4.20 Silberschatz, Galvin and Gagne 2013

21 Pthreads Örneği Pthreads Example (Cont.) 4.21 Silberschatz, Galvin and Gagne 2013

22 10 Thread Birleştiren Pthreads Kodu perating System Concepts 9 th Edition 4.21 Silberschatz, Galvin and Gagne Silberschatz, Galvin and Gagne 2013

23 Windows ta Çok İş Parçalı C Programı 4.23 Silberschatz, Galvin and Gagne 2013

24 Windows ta Çok İş Parçalı C Programı 4.24 Silberschatz, Galvin and Gagne 2013

25 Java Threads Java thread leri JVM tarafından yönetilir. Alttaki OS tarafından sunulan iş parçası modeli kullanılarak gerçekleştirilir. Java thread leri şöyle oluşturulabilir: Thread sınıfını genişleterek (Extend) Runnable arayüzünü gerçekleştirerek (Implement) 4.25 Silberschatz, Galvin and Gagne 2013

26 Java da Çok İş Parçalı Program 4.26 Silberschatz, Galvin and Gagne 2013

27 Java da Çok İş Parçalı Program 4.27 Silberschatz, Galvin and Gagne 2013

28 Örtük İş Parçalama Yaygınlaşan bir yöntem çünkü iş parçası sayısı arttıkça açık iş parçaları ile program doğruluğunu sağlamak zorlaşır. İş parçalarının oluşturulup yönetilmesi programcıya değil derleyicilere ve çalışma zamanı kütüphanelerine bırakılır. Üç yöntem İş parçası havuzları OpenMP Merkezi sevkiyat Diğer yöntemler: Microsoft Threading Building Blocks (TBB), java.util.concurrent package 4.28 Silberschatz, Galvin and Gagne 2013

29 İş Parçası Havuzları İş parçalarını oluşturup havuza at, iş beklesinler. Avantajları: Hazır thread ile isteğe hizmet vermek yenisini oluşturmaktan biraz daha hızlıdır. Uygulamalardaki thread sayısı havuz boyutuyla sınırlıdır. Yapılacak görev ile görev oluşturma mekanizmasını ayırır, böylece görev çalıştırma için farklı stratejilere izin verir. Yani görevler periyodik olarak çalışacak şekilde planlanabilir. Windows API iş parçası havuzlarını destekler: 4.29 Silberschatz, Galvin and Gagne 2013

30 OpenMP C, C++, FORTRAN için derleyici talimatları ve API Paylaşılan bellekli ortamlarda paralel programlama desteği sağlar. Paralel bölgeleri belirler - paralel çalışabilen kod blokları #pragma omp parallel Çekirdek sayısı kadar thread oluştur #pragma omp parallel for for(i=0;i<n;i++) { } c[i] = a[i] + b[i]; For döngüsünü paralel çalıştır 4.30 Silberschatz, Galvin and Gagne 2013

31 Merkezi Sevkiyat Mac OS X and ios için geliştirilen Apple teknolojisi C, C++ dillerine eklentiler, API, ve çalışma zamanı kütüphanesi Paralel bölümlerin belirlenmesine imkan verir. İş parçalama ayrıntılarını yönetir. Blok ^{ } içinde - ˆ{ printf("i am a block"); } Bloklar sevkiyat kuyruğuna koyulur. Kuyruktan çıkarılınca iş parçası havuzundaki uygun iş parçasına atanır Silberschatz, Galvin and Gagne 2013

32 Merkezi Sevkiyat İki tür sevkiyat kuyruğu: seri bloklar FIFO sırasıyla çıkarılır, her süreç için bir kuyruk, adı ana kuyruk Programmers can create additional serial queues within program eşzamanlı FIFO sırasıyla çıkarılır ama tek seferde birkaç tane çıkabilir. Üç tane sistem kuyruğu düşük, varsayılan, yüksek öncelikli 4.32 Silberschatz, Galvin and Gagne 2013

33 İş Parçalama Sorunları fork() ve exec() sistem çağrılarının anlamları Sinyal yönetimi Eşzamanlı ve eşzamansız Thread iptali Eşzamansız veya ertelenen Thread-yerel depolama Planlayıcı etkinleştirme 4.33 Silberschatz, Galvin and Gagne 2013

34 fork() ve exec() anlamı fork()sadece çağıran thread i mi yoksa hepsini mi kopyalar? Bazı UNIX versiyonlarında iki çeşit fork vardır. exec() genellikle çalışan süreci bütün thread lerle birlikte değiştirir Silberschatz, Galvin and Gagne 2013

35 Sinyal Yönetimi Sinyaller UNIX sistemlerinde süreci belirli bir olay olduğunda haberdar eder. Sinyal yönetici sinyalleri işlemekle görevlidir. 1. Belirli bir olay sinyal üretir. 2. Sinyal bir sürece yollanır. 3. Sinyal iki sinyal yöneticiden biri tarafından işlenir: 1. Varsayılan 2. Kullanıcı tanımlı Her sinyal için bir varsayılan yönetici bulunur, çekirdek tarafından çalıştırılır. Kullanıcı tanımlı sinyal yönetici varsayılanın yerine geçebilir. Tek thread varsa sinyal sürece verilir Silberschatz, Galvin and Gagne 2013

36 Sinyal Yönetimi Birden fazla thread varsa sinyal hangisine verilmeli? Sinyalle ilgili thread e ver. Süreçteki her thread e ver. Süreçteki belli thread lere ver. Bir thread i sürece gelen bütün sinyalleri almakla görevlendir Silberschatz, Galvin and Gagne 2013

37 Thread İptali Thread bitmeden sonlandırmak İptal edilecek thread hedef thread İki yaklaşım: Eşzamansız iptal hedef thread i hemen sonlandırır. Ertelenen iptal hedef thread in periyodik olarak iptal edilip edilmeyeceğini kontrol etmesine izin verir. Pthread koduyla thread oluşturup iptal etme: 4.37 Silberschatz, Galvin and Gagne 2013

38 Thread İptali Thread iptalini başlatmak iptal isteği oluşturur ama iptalin gerçekleşmesi thread durumuna bağlıdır. Thread iptali kapalıysa, thread açana kadar iptal beklemede kalır. Varsayılan iptal türü ertelenendir. Thread iptal noktasına ulaşınca iptal gerçekleşir. pthread_testcancel() Sonra temizleme yöneticisi çağrılır. Linux sistemlerinde thread iptali sinyallerle yönetilir Silberschatz, Galvin and Gagne 2013

39 Thread-Yerel Depolama Thread-local storage (TLS) her thread in verinin bir kopyasına sahip olmasına izin verir. Thread oluşturma üzerinde kontrol yoksa faydalıdır. (thread havuzu kullanılıyorsa) Yerel değişkenlerden farklıdır Yerel değişkenler ancak tek fonksiyon çağrısı sırasında görülebilir. TLS farklı fonksiyon çağrıları arasında görülebilir. static veriye benzer TLS her thread için eşsizdir Silberschatz, Galvin and Gagne 2013

40 Planlayıcı Etkinleştirme Çoktan çoğa ve iki seviyeli modellerde uygulamaya ayrılan çekirdek thread lerinin sayısını uygun tutmak için iletişime ihtiyaç duyulur. Kullanıcı ve çekidek thread leri arasında ara veri yapısı kullanılır lightweight process (hafif süreç) (LWP) sürecin üzerinden kullanıcı thread inin çalışmasını planlayabildiği sanal işlemci Her LWP çekirdek thread ine bağlıdır. Kaç LWP gerekir? Planlayıcı etkinleştirme upcalls (yukarıya çağrı) sunar çekirdekten thread kütüphanesindeki yukarıya çağrı yöneticisine iletişim mekanizması Bu iletişim uygulamanın doğru sayıda çekirdek thread i tutmasını sağlar Silberschatz, Galvin and Gagne 2013

41 İşletim Sistemi Örnekleri Windows Threads Linux Threads 4.41 Silberschatz, Galvin and Gagne 2013

42 Windows Threads Windows API Win 98, Win NT, Win 2000, Win XP, and Win 7 için ana API Bire bir eşlemeyi çekirdek seviyesinde gerçekleştirir. Her thread içinde Thread id İşlemci durumunu temsil eden register kümesi Ayrı kullanıcı ve çekirdek stack leri thread kullanıcı ve çekirdek modunda çalışırken kullanılır. Özel veri depolama alanı çalışma zamanı kütüphaneleri ve dinamik bağlama kütüphaneleri (DLL) tarafından kullanılır. Register kümesi, stack ler, ve özel depo alanı iş parçasının bağlamı (context) 4.42 Silberschatz, Galvin and Gagne 2013

43 Windows Threads İş parçasının ana veri yapıları: ETHREAD (Yönetici iş parçası bloğu) iş parçasının ait olduğu sürece ve KTHREAD e pointer içerir, çekirdek alanındadır. KTHREAD (Çekirdek iş parçası bloğu) planlama ve senkronizasyon bilgisi, çekirdek modu stack, TEB e pointer, çekirdek alanındadır. TEB (İş parçası ortam bloğu) thread id, kullanıcı modu stack, thread-yerel depo, kullanıcı alanındadır Silberschatz, Galvin and Gagne 2013

44 Windows Threads Veri Yapıları 4.44 Silberschatz, Galvin and Gagne 2013

45 Linux Threads Linux iş parçalarına görev (task) der. Thread oluşturma clone() sistem çağrısı ile yapılır. clone() çocuk görevin ebeveyn görevin (süreç) adres alanını paylaşmasına imkan verir. Bayraklar davranışı kontrol eder. struct task_struct süreç veri yapılarına işaret eder (paylaşılan veya eşsiz) 4.45 Silberschatz, Galvin and Gagne 2013

46 Bölüm 4 Sonu Silberschatz, Galvin and Gagne 2013

Bölüm 4: İş Parçacıkları. Operating System Concepts with Java 8 th Edition

Bölüm 4: İş Parçacıkları. Operating System Concepts with Java 8 th Edition Bölüm 4: İş Parçacıkları 14.1 Silberschatz, Galvin and Gagne 2009 Bölüm 4: İş Parçacıkları Genel Bakış Çoklu İş Parçacığı Modelleri İş Parçacığı Kütüphaneleri İş Parçacıkları ile İlgili Meseleler İşletim

Detaylı

Bölüm 4: İş Parçacıkları. Operating System Concepts with Java 8 th Edition

Bölüm 4: İş Parçacıkları. Operating System Concepts with Java 8 th Edition Bölüm 4: İş Parçacıkları 14.1 Silberschatz, Galvin and Gagne 2009 Bölüm 4: İş Parçacıkları Genel Bakış Çoklu İş Parçacığı Modelleri İş Parçacığı Kütüphaneleri İş Parçacıkları ile İlgili Meseleler İşletim

Detaylı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

Detaylı

YZM 3102 İşletim Sistemleri

YZM 3102 İşletim Sistemleri YZM 3102 İşletim Sistemleri Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM - 5 Bu bölümde, Thread (İş Parçacığı) Thread lerin Faydaları

Detaylı

İşletim Sistemleri (Operating Systems)

İşletim Sistemleri (Operating Systems) İşletim Sistemleri (Operating Systems) 1 Thread (İşlemcik) Thread (İşlemcik) Nedir? Thread (işlemcik-iplik); Belli bir process e bağlıdır. Bağlı bulundukları process in adres uzayını kullanırlar, Thread

Detaylı

PROCESS YARATIMI (TEKRAR):

PROCESS YARATIMI (TEKRAR): PROCESS YARATIMI (TEKRAR): Gecen haftaki dersten hatırlayabileceğiniz üzere, bir process başka bir process yaratabilmesi için UNIX sistemlerinde fork() sistem çağrısı kullaılıyordu. Başka bir process yaratan

Detaylı

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama BMS-302 İleri Web Programlama İş Parçacığı (Thread) ve Soket (Socket) Programlama İş Parçacıkları (Threads) Ana programa paralel çalışan işler oluşturmak için kullanılır Makine birden fazla çekirdeğe sahipse

Detaylı

ÇOK ÇEKİRDEKLİ İŞLEMCİLER VE PARALEL YAZILIM GELİŞTİRME OLANAKLARI HAKKINDA BİR İNCELEME

ÇOK ÇEKİRDEKLİ İŞLEMCİLER VE PARALEL YAZILIM GELİŞTİRME OLANAKLARI HAKKINDA BİR İNCELEME ÇOK ÇEKİRDEKLİ İŞLEMCİLER VE PARALEL YAZILIM GELİŞTİRME OLANAKLARI HAKKINDA BİR İNCELEME Ecem İren Halilcan Can Akince Aylin Kantarcı Bilgisayar Müh. Bölümü Bilgisayar Müh. Bölümü Bilgisayar Müh. Bölümü

Detaylı

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş İşletim Sistemlerine Giriş Süreçler ve İş Parçacıkları(Thread) İşletim Sistemlerine Giriş - Ders03 1 Süreç -Tüm modern bilgisayarlarda bir çok iş aynı anda yapılabilir. *kullanıcı programları çalışır *disk

Detaylı

Küme Bilgisayarlarda PBS Kuyruk Sistemi

Küme Bilgisayarlarda PBS Kuyruk Sistemi Küme Bilgisayarlarda PBS Kuyruk Sistemi Aslı Zengin asli@ulakbim.gov.tr Ankara, Ekim 2007 www.grid.org.tr İÇERİK Küme Bilgisayar Bileşenleri Küme Bilgisayar Kuyruk Sistemi PBS Kuyruk Sistemi Özellikleri

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ı

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ı

İŞ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ı

REALTIME LINUX. 3. Linux ve Özgür Yazılım Şenliği Murat Demirten, 16 Mayıs 2004, Ankara

REALTIME LINUX. 3. Linux ve Özgür Yazılım Şenliği Murat Demirten, 16 Mayıs 2004, Ankara REALTIME LINUX 3. Linux ve Özgür Yazılım Şenliği Murat Demirten, 16 Mayıs 2004, Ankara Bu belgeyi, Free Software Foundation tarafından yayınlanmış bulunan GNU Genel Kamu Lisansının 2 ya da daha sonraki

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ı

İŞ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ı

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ı

Bölüm 13: Giriş-Çıkış (I/O) Sistemleri

Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013 Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Genel bakış I/O donanımı Uygulama I/O arayüzü Çekirdek

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ı

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ı

Multicore/Multithread Programlama

Multicore/Multithread Programlama Multicore/Multithread Programlama Onur Tolga Şehitoğlu Bilgisayar Mühendisliği 7 Şubat 2008 Başlıklar 1 Gereksinimi Dal ile Süreç Çok İşlemci ve Dal Modelleri Neden Çoklu Dal Programlama? 2 Çok İşlemci/Çok

Detaylı

Bölüm 5: İşlemci Zamanlaması. Operating System Concepts with Java 8 th Edition

Bölüm 5: İşlemci Zamanlaması. Operating System Concepts with Java 8 th Edition Bölüm 5: İşlemci Zamanlaması 5.1 Silberschatz, Galvin and Gagne 2009 Temel Kavramlar Çoklu programlama sayesinde CPU kullanımının optimize edilmesi CPU I/O İşlem Döngüsü Bir işlemin çalıştırılması birbirlerini

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ı

Problem - Unix / Windows PROCESS-Süreçleri "ağır" dır. Hafta 07: Threads (İş Parçacıkları) Örnek - 1. Proses=Bir iş parçacığı (single thread)

Problem - Unix / Windows PROCESS-Süreçleri ağır dır. Hafta 07: Threads (İş Parçacıkları) Örnek - 1. Proses=Bir iş parçacığı (single thread) Hafta 07: Threads (İş Parçacıkları) Overview (Genel Bakış) Multithreading Models (Çoklu Thread Modelleri) Threading Issues (Thread Sorunları) Pthreads (Pthreadler) Solaris 2 Threads (Solaris 2 Threadleri)

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ı

İş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ı

YZM 3102 İşletim Sistemleri

YZM 3102 İşletim Sistemleri YZM 3102 İşletim Sistemleri Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM - 3 Bu bölümde, Proses Kavramı Proses Üzerindeki Bilgiler

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ı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

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İ. (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ı

İş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ı

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ı

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ı

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ı

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ı

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ölüm 2 İşletim Sistemi Yapıları

Bölüm 2 İşletim Sistemi Yapıları Bölüm 2 İşletim Sistemi Yapıları 2.1 Silberschatz, Galvin and Gagne 2009 Bölüm 2: İşletim Sistemi Yapıları İşletim Sistemi Servisleri Kullanıcı İşletim Sistemi Arayüzü Sistem Çağrıları Sistem Çağrısı Tipleri

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ı

İş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ı

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler İşlem Kavramı İşlem Zamanlaması (Process Scheduling) İşlemler Üzerindeki Faaliyetler İşlemler Arası İletişim (Interprocess Communication)

Detaylı

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler İşlem Kavramı İşlem Zamanlaması (Process Scheduling) İşlemler Üzerindeki Faaliyetler İşlemler Arası İletişim (Interprocess Communication)

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ı

Windows'da çalışırken pek çok durumda bir işe başlamadan önce işletim sisteminin o işe ilişkin bilgileri depolayacağı bir alan yaratması gerekir.

Windows'da çalışırken pek çok durumda bir işe başlamadan önce işletim sisteminin o işe ilişkin bilgileri depolayacağı bir alan yaratması gerekir. Handel Kavramı: Windows'da çalışırken pek çok durumda bir işe başlamadan önce işletim sisteminin o işe ilişkin bilgileri depolayacağı bir alan yaratması gerekir. Alanın yaratıldığı bölge Windows'un kendi

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ı

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ı

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ı

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ı

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ı

Paralel Programlama Ortamları

Paralel Programlama Ortamları Paralel Programlama Ortamları Elis Soylu ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ esoylu@ogu.edu.tr Paralel Programlama Ortamları Paralel Programlama Tanımı İş Parçacığı Tabanlı Yöntemler Java Thread ile Paralel

Detaylı

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

BM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar) Bus

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ı

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ı

İşletim Sistemlerinde Çok Prosesli Çalışma

İşletim Sistemlerinde Çok Prosesli Çalışma İşletim Sistemlerinde Çok Prosesli Çalışma Kaan Aslan 4 Mart 2008 İşletim sistemlerini proses yönetimine göre kabaca tek prosesli (single processing) ve çok prosesli (multiprocessing) olmak üzere iki gruba

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ı

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ı

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya

Detaylı

Background (Arka Plan)

Background (Arka Plan) Bölüm 9: Sanal Bellek Operating System Concepts with Java 8 th Edition 9.1 Silberschatz, Galvin and Gagne 2009 Background (Arka Plan) Sanal Bellek Kullanıcı mantıksal hafızanın, fiziksel hafızadan ayrılması.

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ı

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 Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar)

Detaylı

Yazılım Mühendisliği 1

Yazılım Mühendisliği 1 Yazılım Mühendisliği 1 HEDEFLER Yazılım, program ve algoritma kavramları anlar. Yazılım ve donanım maliyetlerinin zamansal değişimlerini ve nedenleri hakkında yorum yapar. Yazılım mühendisliği ile Bilgisayar

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ı

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ı

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ı

PROSESLER. Proses. Proses

PROSESLER. Proses. Proses Proses 2 PROSESLER 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şkin birden fazla proses olabilir.

Detaylı

Süreç 1 Kavramı ve Oluşturma Yöntemleri

Süreç 1 Kavramı ve Oluşturma Yöntemleri İçindekiler Süreç Kavramı ve Oluşturma Yöntemleri...2 UNIX / Linux Sistemlerinde fork ve exec Sistem Çağrıları İle Süreç Kopyalama ve Çalıştırma...3 Thread Kavramı...7 Thread lerin İşletim Sistemleri Tarafından

Detaylı

Linux ve Windows Üzerinde C ve C++ Kullanımı

Linux ve Windows Üzerinde C ve C++ Kullanımı Ön Bilgiler GCC, GNU Compiler Collection (GNU Derleyici Koleksiyonu, genelde GCC olarak kısaltılır), GNU Projesi tarafından üretilen ve çeşitli programlama dillerini destekleyen bir derleyici sistemidir.

Detaylı

Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition

Bölüm 8: Ana Bellek. Operating System Concepts with Java 8 th Edition Bölüm 8: Ana Bellek 8.1 Silberschatz, Galvin and Gagne 2009 Bölüm 8: Ana Bellek Arka Plan Bilgisi Yer Değiştirme (Swapping) Bitişik Bellek Yerleşimi (Contiguous Memory Allocation) Sayfalama (Paging) Sayfa

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ı

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

Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ Yazılım Mühendisliğine Giriş 4. Hafta 2016 GÜZ 1 İkinci Kuşak Bilgisayarlar 1956-1963: Transistor Transistor 1947 yılında keşfedilmiştir. 50 li yılların sonuna kadar bilgisayarlarda yaygın kullanımı görülmez.

Detaylı

İleri Düzey Bilgisayar Ağları

İleri Düzey Bilgisayar Ağları İleri Düzey Bilgisayar Ağları Yazılım Tanımlı Ağlar Mehmet Demirci 1 Yazılım Tanımlı Ağların Temelleri Software-defined networking (SDN) Nedir? Ne işe yarar? Nereden geliyor? Nereye gidiyor? 2 Software-Defined

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ı

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ı

İŞ 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ı

C# nedir,.net Framework nedir?

C# nedir,.net Framework nedir? 1 C# nedir,.net Framework nedir? C# nedir? C#, C/C++ ve Java dillerinde türetilmiş,bu dillerin dezavantajlarının elenip iyi yönlerinin alındığı, güçlü basit, esnek, tip-güvenli(typesafe,tür dönüşümlerindeki

Detaylı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

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ı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

Detaylı

Bölüm 8: Ana Bellek. Operating System Concepts 9 th Edition. Mehmet Demirci tarafından çevrilmiştir.

Bölüm 8: Ana Bellek. Operating System Concepts 9 th Edition. Mehmet Demirci tarafından çevrilmiştir. Bölüm 8: Ana Bellek Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013 Bölüm 8: Bellek Yönetimi Ön Bilgi Swapping (değiş-tokuş) Ardışık Bellek Ayırma Bölütleme (segmentation) Sayfalama

Detaylı

Kursad MANGALOGLU Sales Specialist Power Systems Systems & Technology Group IBM Turkey

Kursad MANGALOGLU Sales Specialist Power Systems Systems & Technology Group IBM Turkey Kursad MANGALOGLU Sales Specialist Power Systems Systems & Technology Group IBM Turkey AJANDA Günümüz IT Trendleri Power Systems nedir? Neden Power Systems Sanallaştırma Teknolojisi? İNSANOĞLUNUN TEKNOLOJİ

Detaylı

& WIN 32 DEN BAKIŞ AÇISI İSMAİL YALÇIN

& WIN 32 DEN BAKIŞ AÇISI İSMAİL YALÇIN WINDOWS XP SCHEDULING ALGORITHMS & WIN 32 DEN BAKIŞ AÇISI İSMAİL YALÇIN WIN 32 Win 32 de süreçler oluştuğu bir sınıf önceliği üzerine verilmiştir. >>Idle(tembel),below,below normal,normal,above normal,high,ve

Detaylı

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009

Bölüm 3: İşlemler Operating System Concepts with Java 8th Edition 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler 3.1 Silberschatz, Galvin and Gagne 2009 Bölüm 3: İşlemler İşlem Kavramı İşlem Zamanlaması (Process Scheduling) İşlemler Üzerindeki Faaliyetler İşlemler Arası İletişim (Interprocess Communication)

Detaylı

İşletim Sistemlerine Genel Bakış

İşletim Sistemlerine Genel Bakış İşletim Sistemlerine Genel Bakış 1.1 Silberschatz, Galvin and Gagne 2009 İşletim Sistemi Nedir? Bilgisayar donanımı ile bilgisayar kullanıcısı arasında bir ara katman olarak aracılık etmek İşletim sisteminin

Detaylı

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

VERİ YAPILARI VE PROGRAMLAMA (BTP104) VERİ YAPILARI VE PROGRAMLAMA (BTP104) Yazar: Doç.Dr. İ. Hakkı CEDİMOĞLU S1 SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.

Detaylı

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2 1 Bu çalışmanın amacı; Bilgi güvenliği konusunda farkındalık yaratmak Mobil cihazlardaki riskleri anlatmak Mobil uygulamaların bilgi güvenliği açısından incelemek 2 Giriş - Mobil Cihazlar Mobil İşletim

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ı

-Bilgisayarı oluşturan iki temel unsurdan diğeri ise YAZILIM dır.

-Bilgisayarı oluşturan iki temel unsurdan diğeri ise YAZILIM dır. YAZILIM -Bilgisayarı oluşturan iki temel unsurdan diğeri ise YAZILIM dır. Elektronik cihazların belirli bir işi yapmasını sağlayan ve komutlardan oluşan programların tümüne verilen isimdir. Yazılım temelde

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ı

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü

İşletim Sistemleri. Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü İşletim Sistemleri Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Bu dersin sunumları, Abraham Silberschatz, Greg Gagne, Peter B. Galvin, Operating System Concepts 9/e, Wiley,

Detaylı

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır.

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır. İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır. Programların ve donanımların kullanılması için bir çalıştırılması platformu oluşturur. Sistemin yazılı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ı

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ı

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ı

Programlama Dilleri II. Bilgisayar ve Öğretim Teknolojileri Öğretmenliği

Programlama Dilleri II. Bilgisayar ve Öğretim Teknolojileri Öğretmenliği Programlama Dilleri II Bilgisayar ve Öğretim Teknolojileri Öğretmenliği Ders Hakkında.NET, Ye n i Je n era syo n Inter n et in geliştirilmesi için gerekli ürün ve teknoloji platformudur. Bugün sayısal

Detaylı

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ Bilgisayar, kendine önceden yüklenmiş program gereğince

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ı

YZM 3102 İşletim Sistemleri

YZM 3102 İşletim Sistemleri YZM 3102 İşletim Sistemleri Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM - 2 Bu bölümde, İşletim Sistemi Servisleri CLI ve GUI

Detaylı

Zeyilname. Zeyilname No:1

Zeyilname. Zeyilname No:1 Zeyilname Zeyilname No:1 Zeyilname No:1 1 YEREL AĞ OMURGA SİSTEMİNİN OLUŞTURULMASI VE FELAKET KURTARMA SİSTEMİNİN KURULMASINA YÖNELİK DONANIM ALIMI İHALESİ GC2.2-Bağcılar ZEYİLNAME NO: 1 GİRİŞ Orijinal

Detaylı

Linux Dosya ve Dizin Yapısı

Linux Dosya ve Dizin Yapısı Linux Dosya ve Dizin Yapısı Dosya ve Dizin Sistemi Linux te kök dizin (/) sembolü ile ifade edilir. Windowsta kök dizin C: ise Linux ta / sembolüdür. 1 Kök dizini (/) İşletim Sisteminin çalışabilmesi için

Detaylı

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır.

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. C PROGRAMLAMA FONKSİYONLAR Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en kolay yolu onları küçük parçalar halinde yazıp sonra

Detaylı