İşletim Sistemlerine Giriş



Benzer belgeler
Bilgisayar İşletim Sistemleri BLG 312

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

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

İşletim Sistemlerine Giriş

İşlem Yönetimi (Process Management)

İşletim Sistemlerine Giriş

PROCESS YARATIMI (TEKRAR):

İşletim Sistemleri (Operating Systems)

Bilgisayar İşletim Sistemleri BLG 312

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

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş

İşletim Sistemlerine Giriş

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

Multicore/Multithread Programlama

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

İşletim Sistemlerine Giriş

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

İşletim Sistemlerine Giriş

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

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

Proses. Prosesler 2. İşletim Sistemleri

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

Görsel Programlama DERS 11. Görsel Programlama - Ders11/ 1

İşletim Sistemlerine Genel Bakış

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

PROSESLER. Proses. Proses

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

Sistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.

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

Bilgisayar İşletim Sistemleri BLG 312

Çekirdek Nedir? Ne yapar?

En yaygın kullanılan işletim sistemlerine örnek olarak; Microsoft Windows, Mac OS X, Linux, Android ve ios örnek verilebilir.

4. Bölüm Programlamaya Giriş

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

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

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

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

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)

Multithreading & Asynchronous Programlama

BM-311 Bilgisayar Mimarisi

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

DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik

PAPERWORK TEKNİK MİMARİ

Bilgisayar Sistemlerine Genel Bakış

SIMAN KULLANIM KILAVUZU

ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ BAHAR DÖNEMİ ÖDEV-3

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.

Çözüm Bilgisayar. Çözüm SIRAMATİK

Üst Düzey Programlama

Düşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir?

VERİ TABANI ve YÖNETİMİ

YZM 3102 İşletim Sistemleri

İşletim Sistemleri (Operating Systems)

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

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

Özyineleme (Recursion)

Dr. Fatih AY Tel: fatihay@fatihay.net

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

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

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları.

Program Nedir? Program, bir problemin çözümü için herhangi bir programlama dilinin kuralları ile oluşturulmuş komut kümesidir.

Linux Sistemlerde Süreç Zamanlama Algoritmaları (Scheduler Algorithms) ÜMİT İŞGÜDER

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

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

DONANIM. 1-Sitem birimi (kasa ) ve iç donanım bileşenleri 2-Çevre birimleri ve tanımlamaları 3-Giriş ve çıkış donanım birimleri

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

Yrd.Doç.Dr. Celal Murat KANDEMİR. Kodlama (Coding) : Bir nesneler kümesinin bir dizgi (bit dizisi) kümesi ile temsil edilmesidir.

Kural Motoru.

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

DERS 10 İŞLETİM SİSTEMİ ÇALIŞMA PRENSİBLERİ VE HATA MESAJLARI

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

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2

Temel Bilgisayar Programlama

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

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

Bilgisayar İşletim Sistemleri BLG 312

BM-311 Bilgisayar Mimarisi

VERİ TABANI YÖNETİM SİSTEMLERİ I

İş Parçacıkları Thread(s)

Bilgisayar Uygulamalı Buluşlar için İstemlerin Yazılması

PARALEL HESAPLAMA ÇAĞRI GİDER ENES BİLGİN

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

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

Üst Düzey Programlama

Çok işlemli (multitasking) sistemlerde işlemler (process) kısıtlı kaynakları kullanmak zorundadırlar.

Windows Eski Sürümleri Bellek Yapısı

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

İşletim Sistemi. BTEP205 - İşletim Sistemleri

DERS: MESLEKİ BİLGİSAYAR MODÜL -2: İŞLETİM SİSTEMİNDE MASA ÜSTÜ

Usta Aritmetik Bayi Kontrol Programı Kullanım Kılavuzu (V.1.3.0)

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

YZM 3102 İşletim Sistemleri

1.1. Yazılım Geliştirme Süreci

ELN1001 BİLGİSAYAR PROGRAMLAMA I

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

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

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

Transkript:

İş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 okunabilir. *yazıcıya ya da ekrana çıktı verilebilir. *cd ye veri yazılabilir. *... Çoklu programlamalı sistemlerde, işlemci bir programdan diğerine çok küçük sürelerde geçerek tüm programların aynı anda çalışıyormuş izlenimini verilir. İşletim Sistemlerine Giriş - Ders03 2

Süreç Bilgisayarda bulunan tüm çalışabilir programlar süreçler şeklinde organize edilir. Süreç yürütme anında(execution) bulunan bir programdır. Her sürecin kendine özel değişkenleri vardır. *Program sayacı *Yazmaçları *Program durum kelimesi(psw) *Yığın Göstericisi * İşletim Sistemlerine Giriş - Ders03 3

Süreç Kavramı Bir bilgisayar mühendisi düşünelim. Mühendis kek yapıyor olsun. Mühendisin elinde bir kek tarifi ve malzeme(yumurta, un, şeker,...) ile dolu bir mutfağı bulunsun. Bu anlatımdaki kek tarifi programdır. Bilgisayar Mühendisi İşlemcidir. Kek malzemesi ise programın girdi verisidir. Süreç; mühendisin tarifi okuması, malzemeleri alıp kullanması ve keki yapmasıdır. İşletim Sistemlerine Giriş - Ders03 4

Süreçler arası geçiş A süreci Program Sayacı-PC A sürecinin adresi B süreci C süreci D süreci İşletim Sistemlerine Giriş - Ders03 5

Süreçler arası geçiş D SÜREÇLER C B A ZAMAN İşletim Sistemlerine Giriş - Ders03 6

Süreç İşletim sistemi tüm süreçlerin bilgilerini, sistemde bulunan bir tabloda(dizi ya da bağlı liste) tutar. Bu tabloya süreç tablosu(process table) denilir. Bu tabloda her süreç için bir girdi bulunur. Bu girdi içerisinde süreç ile ilgili olan tüm bilgiler tutulur. *program sayacı, yığın işaretçisi, bellek paylaşım bilgisi, açık dosyalarının durumları, zamanlama(scheduling) bilgileri,... İşletim Sistemlerine Giriş - Ders03 7

Süreç Tablosu Yazmaçlar(registers) Program sayacı Program durum kelimesi Yığın işaretçisi Süreç durumu Öncelik(priority) Zamanlama parametreleri Süreç numarası Ana süreç Süreç grubu Sinyaller Başlama zamanı Kullanılan işlemci zamanı... Süreç Tablosu A süreci B süreci C süreci... n. süreç İşletim Sistemlerine Giriş - Ders03 8

Süreç Durumları Her süreçin kendi iç durumu ve program sayacı(program counter) vardır. Her süreç farklı birer varlık olmasına rağmen birbirleri ile etkileşimde bulunabilir ve birbirleri ile haberleşebilirler. Bir sürecin çıktısı başka bir sürecin girdisi olabilir.bu tip durumlarda örneğin, girdiyi alan süreç çıktıdan daha hızlı çalışırsa girdinin olmadığı durumlarda bekler(bloklanır). İkinci durum ise işlemcinin çalışan süreci durdurarak başka bir süreci çalıştırmasıdır. İşletim Sistemlerine Giriş - Ders03 9

Süreç Durumları Süreçler; 1. Çalışıyor(Running): Şu anda işlemciyi kullanıyor 2. Hazır(Ready) : Çalışabilir durumdadır, başka bir sürecin çalışması için geçici olarak durmuştur. 3.Bloklanmış(Blocked): Harici bir olay gerçekleşmeden çalışmaz. İşletim Sistemlerine Giriş - Ders03 10

Süreç Durumları Çalışıyor 1 Bloklanmış 4 3 2 Hazır 1. Süreç girdi beklediği için bloklanır. 2. Zamanlayıcı(Scheduler) başka bir süreç seçer. 3. Zamanlayıcı bu süreci çalışması için seçer. 4. Girdi kullanılabilir olur. İşletim Sistemlerine Giriş - Ders03 11

İşlemci ve I/O kesmeleri ZAMANLAYICI(Scheduler), o anda çalışan süreçlerden hangisinin durdurulup, hangisinin çalıştırılacağına karar veren ve kesmeleri(interrupt) yöneten yazılımdır. Bilgisayarda işlemci ve I/O aygıtlarının çoklu programlama ortamındaki birlikte çalışmaları şu şekilde gerçekleşir; Bilgisayarın belleğinde her I/O aygıt sınıfı ile ilişkili olan bir tablo bulunmaktadır. Bu tabloya kesme vektörü(interrupt vector) adı verilmektedir. Bu vektör kesme işlemciye geldiğinde bu kesmeye karşılık gelen kesme servis prosedürünün çalıştırılması için gerekli adres bilgisini tutar. Her kesmeye karşılık bir prosedür vardır ve adresi bu tabloda tutulur. İşletim Sistemlerine Giriş - Ders03 12

İşlemci ve I/O kesmeleri Örneğin, 3 numaralı kullanıcı süreci çalışırken bir disk kesmesi(disk interrrupt) gelsin. Bu durumda çalışan program ile ilgili tüm bilgi(program sayacı, yığın işaretçisi,psw,yazmaçlar) yığına saklanır. Kesme numarasına göre kesme vektöründeki ilgili prosedüre gidilir. Bu prosedürün çalışması sonunda disk kesmesine yol açan süreç numarası bulunur ve bu süreç bloklanmış durumundan hazır duruma geçirilir. Zamanlayıcı(scheduler) çalıştırılır. Zamanlayıcı hazır durumdaki süreçlerden birisini kendi algoritmasına göre seçerek çalıştırır. İşletim Sistemlerine Giriş - Ders03 13

İş Parçacığı(Thread) Modeli Geneleksel işletim sistemlerinde, her sürecin belirli bir adres uzayı vardır. Bu adres uzayında yapması gerekli olan işlemleri kendisi işlemcide çalışırken yapar. İşlemci aynı anda sadece tek bir komut(instruction) çalıştırabilir. İşlemcide çalışacak olan süreç seçildikten sonra işlemcide belirli bir süreye kadar çalışır. Bazen aynı adres uzayında başka bir ifadeyle aynı süreç içerisinde aynı programın farklı bölümleri (iş parçacığıthread) yarı paralel olarak çalıştırılabilir. Bu şekilde aynı süreç içerisinde birden fazla süreç parçacıkları paralel olarak işlem yaparlar. Bu modele iş parçacığı modeli denilir. İşletim Sistemlerine Giriş - Ders03 14

İş Parçacığı(Thread) Modeli Bir süreç iki farklı bölümden oluşmaktadır: * Kaynakları(açık dosyalar, çocuk süreçler,program texti, program verileri,süreçe özel olan diğer veriler...) * Çalışan kod kısmı, yani şu anda çalışan kod ve bir sonraki çalışacak kod bölümü.(program sayacı, yazmaçlar, yığın(stack), çağrılmış fakat geri dönülmemiş prosedürler). İşletim Sistemlerine Giriş - Ders03 15

İş Parçacığı(Thread) Modeli İş Parçacığı(thread) kavramının bize getirdiği, aynı süreç ortamında çoklu çalıştırma(execution-yürütme ) işleminin yerine getirilmesidir. Tek bir süreç içerisinde çoklu iş parçacıklarının(multi thread) çalışması, çoklu programlamada birden fazla sürecin aynı anda (işlemcide sırayla) çalışmasına eşdeğerdir. İşletim Sistemlerine Giriş - Ders03 16

İş Parçacığı(Thread) Modeli Bir süreç içerisindeki tüm threadler, aynı adres uzayını, açık dosyaları, genel değişkenler gibi kaynakları paylaşırlar. Süreçler ise fiziksel belleği, diskleri, yazmaçları, ve diğer genel kaynakları paylaşırlar. İşletim Sistemlerine Giriş - Ders03 17

İş Parçacığı(Thread) Modeli a) Tek thread li üç süreç çalışmaktadır. b) Üç threadli tek süreç çalışmaktadır. İşletim Sistemlerine Giriş - Ders03 18

İş Parçacığı(Thread) Modeli Bir süreç içerisindeki tüm threadler, aynı adres uzayını, açık dosyaları, genel değişkenler gibi kaynakları paylaşırlar. Süreçler ise fiziksel belleği, diskleri, yazmaçları, ve diğer genel kaynakları paylaşırlar. Her thread kendi sürecinin içerisindeki tüm adreslere erişebilir, bir thread başka bir thread'in yığınına(stack) yazabilir, okuyabilir, ya da tamamen boşaltabilir. Threadler yanı işi gerçekleştirmek üzerinde ortaklaşa çalışırlar. İşletim Sistemlerine Giriş - Ders03 19

İş Parçacığı(Thread) Modeli Her süreç için Adres Uzayı(Address Space) Genel değişkenler Açık dosyalar Çocuk süreçler Askıya alma ikazları (pending alarms) sinyal ve sinyal işleyiciler hesap bilgisi Her thread için Program sayacı (program counter) Yazmaçlar(registers) Yığın(Stack) Durum bilgisi(state) Birinci satırda bir süreç içerisindeki tüm threadlerce paylaşılan değişkenler, ikinci satırda ise threade özel olan değişkenler listelenmiştir. İşletim Sistemlerine Giriş - Ders03 20

İş Parçacığı(Thread) Modeli Süreçler gibi threadlerde hazır(ready), bloklanmış(blocked), çalışır(running) ve sonlanmış(terminated) durumlarında bulunabilir. Çalışır durumda olan thread şu anda aktiftir ve işlemciyi kullanmaktadır. Bloklanmış bir thread, bir olayın olmasını beklemektedir. Örneğin, klavyeden bir verinin girilmesini bekleyen thread bloklanmıştır. Hazır olan thread ise çalışabilir durumdadır ve kendisine sıra geldiginde çalışacaktır. İşletim Sistemlerine Giriş - Ders03 21

İş Parçacığı(Thread) Modeli Her threadin kendi yığını(stack) bulunmaktadır. İşletim Sistemlerine Giriş - Ders03 22

İş Parçacığı(Thread) Modeli Yazılan programın çoklu iş parçacıklı(multi threaded) çalışabilmesi için yazılan programın thread mekanizmalarını dektekliyor olması ya da dektekleyen kütüphaneleri kullanabiliyor olması gereklidir. GNU/Linux temelli işletim sistemlerinde, POSIX standart thread API (pthreads) kullanılmaktadır. Threadler ile ilgili olan tüm fonksiyonlar <pthread.h> kütüphanesinde tanımlıdır. Bu kütüphane standart C kütüphaneleri arasında olmadığı için programın bu kütüphane eklenerek derlenmesi gereklidir. İşletim Sistemlerine Giriş - Ders03 23

İşletim Sistemlerine Giriş - Ders03 24

İşletim Sistemlerine Giriş - Ders03 25

İş Parçacığı(Thread) Modeli pthread_join(thread_id,void*) : bir thredin başka threadin çalışmasını bitirmesini bekler. pthread_equal(thread_id1,thread_id2): iki threadin eşitliğini kontrol eder.... gibi başka kütüphane fonksiyonları bulunmaktadır. İşletim Sistemlerine Giriş - Ders03 26

İş Parçacığı(Thread) Modeli Bir süreçte üç adet thread bulunsun. Eğer bilgisayarda tek işlemci var ise, bu threadlerin her biri CPU nun1/3 hızda çalışabilir. Eğer sistemde birden fazla işlemci var ise, her thread farklı işlemcide çalıştırılır, bu şekilde uygulama işlemci ve thread sayısına bağlı olarak hızlanır. Thread kullanımının kötü yanları ise; threadleri kullanan uygulamanın yazımının özenli yapılması gereklidir. Her thread ortak veri kullandığı için birinin bir veri üzerindeki etkisi diğer threadleri etkiler. Örneğin, bir thread bir dosya ile işlemini bitirdiginde dosyayı kapatsın. Eğer süreçteki başka thread bu dosyayı kullanıyorsa, uygulama çalışmaz ya da sonuçlar yanlış olabilir. İşletim Sistemlerine Giriş - Ders03 27

İş Parçacığı(Thread) Modeli Diğer bir örnek, bir thread kullandığı belleğin tükendiğini görse ve kendine bellek tahsis etmek istese ve bu işleme başlasa; bu noktada başka bir thread'e geçiş olduğunda aynı işlemi ikinci thread'de gerçekleştirse iki thread de iki kez bellek tahsisi yapmış olacaktır. Bu tip problemlerin çözümü için, kodun çok dikkatli yazılması gereklidir. İşletim Sistemlerine Giriş - Ders03 28

İş Parçacığı(Thread) Modeli Thread modeli iki şekilde gerçekleştirilebilir. *Kullanıcı uzayında (user space) *Çekirdek uzayında (kernel space) İşletim Sistemlerine Giriş - Ders03 29

Thread leri Kullanıcı Uzayında Gerçekleştirme Bu yöntemde thread mekanizması kullanıcı uzayında çalışmaktadır. Çekirdek, çalışan bir süreç içerisindeki threadlerden habersizdir ve bu sürece tek thread'li gibi davranır. Bu yöntem işletim sisteminin kendisi Thread leri desteklemese dahi gerçekleştirilebilir. İşletim Sistemlerine Giriş - Ders03 30

Thread leri Kullanıcı Uzayında Gerçekleştirme İşletim Sistemlerine Giriş - Ders03 31

Thread leri Kullanıcı Uzayında Gerçekleştirme Bu yöntemde threadleri yöneten prosedürler vardır.(thread_create,thread_exit,... gibi) (pthread kütüphanesi) Her süreç kendi içerisindeki thread bilgisini tutan bir tabloya sahiptir. Bu tabloya thread tablosu denilir. Her sürecin kendi thread zamanlama(thread scheduler) algoritması olabilir. Bir thread bloklandığında, aynı süreç içerisindeki tüm threadler ve süreç bloklanır. Thread kendi isteği ile çalışmasını durdurabilir, başka türlü durduralamaz. İşletim Sistemlerine Giriş - Ders03 32

Thread leri Çekirdek Uzayında Gerçekleştirme Çekirdek süreçleri nasıl yöneteceğini bilir ve threadlerden haberdardır. Her süreç için thread tablosu kullanılmaz. Genel bir thread tablosu bulunur. Çekirdekte tüm threadlerin bilgisi saklanır. Bir thread yeni bir thread oluşturmak ya da yok etmek isterse, sistem çağrısı yapar. Çok fazla thread oluşturma ve silme, sistem çağrıları ile gerçekleştirildiği için ağır bir yük getirir ve performansın düşmesine yol açar. Bir thread bloklandığında çekirdek aynı sürecin başka bir threadine değil, başka bir sürece ait olan thread'e geçiş yapabilir. İşletim Sistemlerine Giriş - Ders03 33

Melez yöntem Çekirdek, kendi seviyesindeki threadlerde zamanlama(scheduling) yapar, kullanıcı seviyeli olanlardan habersizdir. Çekirdek seviyeli thread de kullanıcı seviyeli olan threadlerin zamanlamasından sorumludur. İşletim Sistemlerine Giriş - Ders03 34

İşletim Sistemlerine Giriş Süreçler ve İş Parçacıkları(Thread) İşletim Sistemlerine Giriş - Ders03 35