Ev - Mutfak
Ansiklopedi işletim sistemleri hakkında her şeyi indirin. İşletim sistemleri üzerine kitaplar. Bilgisayar Donanımına Genel Bakış

1İşletim Sistemlerine Başlarken

1.1 İşletim sistemlerinin amacı ve işlevleri

Bilgisayar işletim sistemi, bir yandan uygulamalar ve kullanıcılar, diğer yandan bilgisayar donanımı arasında bir arayüz görevi gören, birbiriyle ilişkili bir dizi programdır. İşletim sistemi iki grup işlevi gerçekleştirir:

Kullanıcıya veya programcıya gerçek bilgisayar donanımı yerine genişletilmiş bir sanal makine sağlar;

Kaynaklarını bazı kriterlere uygun olarak rasyonel bir şekilde yöneterek bilgisayar kullanımının verimliliğini artırır.

Kullanıcı, kural olarak, bilgisayar donanımının ayrıntılarıyla ilgilenmez; onu programlama dillerinden birinde yazılabilen bir dizi uygulama olarak görür. İşletim sistemi programcıya, programların sistem çağrıları adı verilen özel komutlar aracılığıyla kullanabileceği bir dizi yetenek sağlar. Bu nedenle bir yazılım uygulaması, örneğin dosyalarla çalışmak için gerekli olan birçok sistem çağrısını içerir. İşletim sistemi donanım ayrıntılarını programcıdan gizler ve işletim ortamı sisteminin yürütülmesi için uygun bir arayüz sağlar.

İşletim sistemi aynı zamanda kaynak yöneticisi görevi de görür. Bu yaklaşıma göre işletim sisteminin görevi, işlemcilerin, belleğin ve G/Ç aygıtlarının sistem arasında düzenli ve kontrollü dağılımını sağlamaktır. çeşitli programlar. İşletim sistemi aşağıdaki özelliklere sahiptir:

İşletim sisteminin işlevleri diğer yazılımlarla aynı şekilde çalışır - bunlar bireysel programlar veya bir dizi program, yürütme süreçleri biçiminde uygulanır;

İşletim sistemi kontrolü diğer işlemlere devretmeli ve işlemcinin görevlerini yerine getirmesi için kendisine tekrar zaman vermesini beklemelidir.

Kaynak yönetimi, kaynağın türüne bağlı olmayan aşağıdaki genel görevlerin çözülmesini içerir:

Kaynak planlama - yani, belirli bir kaynağa hangi sürecin, ne zaman ve hangi miktarda (kaynak kısımlar halinde tahsis edilebiliyorsa) tahsis edilmesi gerektiğinin belirlenmesi;

Kaynak isteklerinin karşılanması;

Bir kaynağın durumunun izlenmesi ve kullanımının kaydedilmesi, yani bakımının yapılması operasyonel bilgi kaynağın meşgul mü yoksa boş mu olduğu ve kaynağın ne kadarının halihazırda tahsis edildiği;

Süreçler arasındaki çatışmaların çözülmesi.

Kaynak yönetimi, bunların çoğullanmasını (dağıtımını) iki şekilde içerir: zaman ve mekanda. Bir kaynak zaman içinde tahsis edildiğinde, farklı kullanıcılar ve programlar onu sırayla kullanır. Önce biri kaynağı kullanmak için erişim elde eder, sonra diğeri vb. Örneğin, birkaç program merkezi işlemciye erişmek ister. Bu durumda, işletim sistemi önce bir programın işlemciye erişmesine izin verir, ardından yeterli bir süre çalıştıktan sonra başka bir programa, ardından bir sonrakine ve son olarak tekrar ilkine erişim sağlar. Bir kaynağın zaman içinde ne kadar süre kullanılacağını, sıradakinin kim olacağını ve kaynağın onlara ne kadar süreyle verileceğini belirlemek işletim sisteminin görevidir. Diğer bir dağıtım türü ise uzaysal çoğullamadır. Dönüşümlü olarak çalışmak yerine her müşteri kaynağın bir kısmını alır. Tipik olarak RAM, birden fazla çalışan program arasında paylaşılır, böylece hepsi aynı anda bellekte bulunabilir (örneğin, merkezi işlemciyi sırayla kullanarak). Birden çok programı tutacak yeterli belleğin olduğunu varsayarsak, belleğin tamamını tek bir programa ayırmak yerine, belleğe aynı anda birden çok program ayırmak, özellikle de kullanılabilir belleğin yalnızca küçük bir kısmına ihtiyaç duyuyorsa daha verimlidir. Elbette bu, adil dağıtım, hafıza koruması vb. sorunları gündeme getiriyor ve işletim sistemi bu tür sorunları çözmek için var.

1.2 İşletim sistemlerinin gelişim tarihi

Genellikle işletim sistemlerinin gelişim tarihi, bilgisayarların gelişim tarihi ile ilişkilidir. Bilgisayara ilişkin ilk fikir, on dokuzuncu yüzyılın ortalarında İngiliz matematikçi Charles Babbage tarafından ortaya atıldı. Hiçbir zaman düzgün çalışmayan, mekanik "analitik motor" olarak adlandırılan makineyi geliştirdi. Aşağıda bilgisayar nesilleri ve bunların işletim sistemleriyle ilişkileri yer almaktadır.

Birinci nesil 1945-1955

Bilgisayarlar vakum tüplerinden ve yama panellerinden oluşuyordu. En büyük başarı delikli kartların üretimidir. İnce kartondan yapılmış delikli kart, kartın belirli konumlarındaki deliklerin varlığı veya yokluğuyla bilgiyi temsil eder. İşletim sistemi yok.

İkinci nesil 1955-1965

Bilgisayarların temeli transistörler ve toplu işlem sistemleridir. Manyetik bantları kaydetmek için delikli kart desteleri ve cihazlarla karakterize edilir. Fortran Monitör Sistemi (FMS) ve IBSYS işletim sistemleri için ağırlıklı olarak Fortran ve Assembly dillerinde programlanmıştır.

Üçüncü nesil 1965-1980

Dönem, entegre devrelerin ortaya çıkışının yanı sıra çoklu görev veya başka bir deyişle çoklu programlama ile karakterize edilir. IBM, IBM/360'tan başlayarak çeşitli makine serileri üretmektedir. İkinci nesil FMS'den yaklaşık 1000 kat daha büyük olan OS/360 işletim sistemi onlar için yazılmıştır. Bu aşamada, çoklu görevin endüstriyel bir uygulaması ortaya çıkıyor - birkaç programın aynı anda bilgisayar belleğinde depolandığı ve dönüşümlü olarak bir işlemcide yürütüldüğü bir bilgi işlem sürecini organize etme yöntemi.

Diğer ünlü işletim sistemi bu dönemin CTSS (Uyumlu Zaman Paylaşım Sistemi) ve yüzlerce kullanıcının tek bir makineye aynı anda erişmesini sağlamak üzere tasarlanan MULTICS (Multiplex Bilgi ve Bilgi İşlem Hizmeti). Bu sistemin daha da geliştirilmesi UNIX'e dönüştü.

Dördüncü nesil 1980'den günümüze

Bu dönem büyük ölçekli entegre devrelerin ortaya çıkışıyla ilişkilidir. 1974 yılında Intel ilk evrensel 8-bit'i piyasaya sürdü. Intel işlemci 8080. 80'lerin başında IBM, kişisel bir bilgisayar olan IBM PC'yi geliştirdi. Aynı zamanda MS-DOS'un ilk sürümü ortaya çıktı. Bu noktaya kadar geliştirilen tüm işletim sistemleri, kullanıcıyla yalnızca metin iletişim modunu destekliyordu.

Kullanıcı dostu bir grafik arayüz oluşturmaya yönelik ilk girişim Apple Macintosh'ta uygulandı. Başarılarından etkilenen Microsoft Corporation, MS-DOS - Windows için grafiksel bir kabuk yayınladı. Ve 1995'ten beri Windows 95 piyasaya sürüldü ve bu da otonom sistem. Daha sonra, Windows 95 ve başka bir Windows NT sistemi temel alınarak şu anda mevcut olan işletim sistemleri geliştirildi - Windows 2000, XP, Vista ve diğerleri.

1.3 İşletim sistemlerinin sınıflandırılması

Pek çok işletim sistemi var ve herkes bunları bilmiyor. Daha sonra, büyükten küçüğe 7 farklı işletim sistemini ele alacağız.

Ana Bilgisayar İşletim Sistemleri

Ana bilgisayar - yüksek performanslı bilgisayar genel amaçlı Yoğun bilgi işlem işlerini gerçekleştirmek için tasarlanmış önemli miktarda RAM ve harici belleğe sahip. Bunlar genellikle oda büyüklüğünde bilgisayarlardır ve büyük şirketler. Ana bilgisayarlar genellikle binlerce disk ve terabaytlarca RAM içerir.

Ana bilgisayar işletim sistemleri öncelikle, çoğu büyük miktarda I/O gerektiren birden fazla eşzamanlı işi yürütmek üzere tasarlanmıştır. Sistemin saniyede binlerce isteğe yanıt vermesi gerekiyor. Bir örnek, 3. nesil işletim sistemi OS/360'tan geliştirilen OS/390'dır.

Sunucu işletim sistemleri

Bu işletim sistemleri kişisel bilgisayar, iş istasyonu ve hatta ana bilgisayar gibi sunucularda çalışır. Sunucular yazdırma aygıtları, dosyalar veya İnternet ile çalışma olanağı sağlar. Bu tür işletim sistemleri arasında Unix, Linux, Windows 2003 Server vb. bulunur.

Çok işlemcili işletim sistemleri

Bu sistemler birden fazla merkezi işlemciye sahip bilgisayarlarda kullanılmaktadır. Özel işletim sistemleri gerektirirler ancak genellikle sunucu işletim sistemlerinin modifikasyonlarıdır.

Kişisel bilgisayarlar için işletim sistemleri

Bu sistemlerin ana kriteri tek kullanıcı için uygun bir arayüzdür. En ünlü sistemler: Windows 98, 2000, XP, Vista serisi; Macintosh, Linux.

Gerçek zamanlı işletim sistemleri

Bu sistemlerin ana parametresi zamandır. Kontrol sistemlerinde Endüstriyel süreç konveyörün ve çeşitli endüstriyel robotların çalışma sürelerinin net bir şekilde senkronize edilmesi gerekir. Bu zor bir gerçek zamanlı sistemdir. Multimedya sistemleri gibi, bir işlemin tamamlanması için son teslim tarihlerinin kaçırılmasının kabul edilebilir olduğu esnek gerçek zamanlı sistemler de vardır. Gerçek zamanlı işletim sistemleri arasında VxWorks ve QNX bulunur.

Gömülü işletim sistemleri

Bunlara “cep bilgisayarları” PDA (Kişisel Dijital Asistan) için işletim sistemleri de dahildir. Ayrıca gömülü sistemler arabalarda, televizyonlarda, cep telefonları. Bu işletim sistemleri tipik olarak bellek, güç vb. sınırlamalarla birlikte gerçek zamanlı işletim sistemlerinin tüm özelliklerine sahiptir. Sistem örnekleri PalmOS, Windows CE'dir.

Akıllı kartlar için işletim sistemleri

Akıllı kart, merkezi bir işlem birimi içeren, kredi kartı boyutunda bir cihazdır. Bu tür sistemler ciddi güç ve bellek sınırlamalarına tabidir. Bazıları yalnızca tek bir işlemi yönetir; elektronik ödemeÖrneğin. Belirli akıllı kartlar Java Sanal Makinesi desteğini içerir.

1.4 Bilgisayar donanımına genel bakış

Bir işletim sistemi, üzerinde çalışması gereken bilgisayarın donanımıyla yakından ilgilidir. Donanım, işletim sisteminin komut setini ve kaynaklarının yönetimini etkiler. Kavramsal olarak basit bir bilgisayar Şekil 1'de gösterilen modelle temsil edilebilir. Bu yapı ilk IBM PC modellerinde kullanıldı.

Şekil 1 - Kişisel bilgisayarın bazı bileşenleri


Şekilde, merkezi işlemci, bellek ve giriş/çıkış aygıtları, bilgi alışverişinde bulundukları bir sistem veri yolu ile birbirine bağlanmıştır.

İşlemci

Bir bilgisayarın “beyni” merkezi işlem birimidir (CPU). Bellekten komutları seçer ve yürütür. Tipik bir işlemci döngüsü şuna benzer: bellekten ilk talimatı okur, türünü ve işlenenlerini belirlemek için kodunu çözer, talimatı yürütür, ardından sonraki talimatları okur ve kodunu çözer. Programlar bu şekilde yürütülür.

Her işlemci için yürütebileceği bir dizi talimat vardır. Talimatları almak veya verileri almak için belleğe erişim, bu talimatların yürütülmesinden çok daha uzun sürdüğünden, tüm işlemciler, değişkenleri ve ara sonuçları depolamak için dahili kayıtlar içerir. Bu nedenle, talimat seti genellikle bir sözcüğü bellekten bir kayda yüklemek ve bir sözcüğü bir kayıttan belleğe depolamak için talimatlar içerir. Değişkenleri depolamak için kullanılan ana kayıtlara ek olarak çoğu işlemcide, programcıların görebileceği özel kayıtların yanı sıra değişkenleri depolamak için kullanılan birkaç özel kayıt bulunur.

İşlemci zaman çoğullama işlemine tabi tutulduğunda, işletim sistemi çalışan bir programı durdurarak başka bir programı başlatır. Böyle bir kesinti meydana geldiğinde, işletim sisteminin işlemcinin tüm kayıtlarını kaydetmesi gerekir; böylece daha sonra kesintiye uğrayan program çalışmaya devam ettiğinde bu kayıtlar geri yüklenebilir.

CPU'nun hızını artırmak için geliştiriciler, bir saat döngüsünde yalnızca bir komutun okunabildiği, kodunun çözülebildiği ve yürütülebildiği basit modeli terk etti. Modern işlemciler Aynı anda birden fazla komutu yürütme yeteneğine sahiptir.

Çoğu CPU'nun iki çalışma modu vardır: çekirdek modu ve kullanıcı modu. İşlemci çekirdek modunda çalışıyorsa, komut setindeki tüm talimatları yürütebilir ve donanımın tüm yeteneklerini kullanabilir. İşletim sistemi çekirdek modunda çalışarak tüm donanıma erişim sağlar. Bunun tersine, kullanıcılar, programların bir alt kümesinin yürütülmesine izin veren ve donanımın yalnızca bir kısmını kullanılabilir hale getiren kullanıcı modunda çalışır.

Hafıza

Herhangi bir bilgisayarın ikinci ana bileşeni bellektir. İdeal olarak, bellek mümkün olduğu kadar hızlı olmalıdır (tek bir talimatı işlemekten daha hızlıdır, böylece işlemci yeterince büyük ve son derece ucuz belleğe erişerek yavaşlamaz). Bugün bu gereksinimlerin tamamını karşılayan hiçbir teknoloji yoktur. Bu nedenle başka bir yaklaşım daha var.

Bellek sistemi, Şekil 2'de gösterilen katmanlar hiyerarşisi şeklinde yapılandırılmıştır. Hiyerarşide yukarıdan aşağıya doğru ilerledikçe iki parametre artar: erişim süresi, bellek boyutu.

Üst katman CPU'nun dahili kayıtlarından oluşur, dolayısıyla bunlara erişimde herhangi bir gecikme yaşanmaz. Dahili kayıtlar 1Kb'den daha az bilgi depolar. Programlar, donanım müdahalesi olmadan kayıtları yönetebilir. Kayıt erişimi en hızlısıdır - birkaç nanosaniye.

Bir sonraki katman, çoğunlukla donanım tarafından kontrol edilen önbellek içerir. En sık kullanılan önbellek alanları, CPU'nun içinde bulunan yüksek hızlı önbellekte saklanır. Bir programın bellekten bir kelime okuması gerektiğinde, önbellek yongası istenen satırın önbellekte olup olmadığını belirler; eğer öyleyse, o zaman bir önbellek erişimi gerçekleşir. Yüksek maliyeti nedeniyle önbellek boyutu sınırlıdır. Modern makinelerin her biri bir öncekinden daha yavaş ve daha büyük olan iki veya üç önbellek düzeyi vardır. Önbellek boyutları onlarca kilobayttan birkaç megabayta kadar değişir. Erişim süresi kayıtlara göre biraz daha uzundur.


Şekil 2 – Hiyerarşik bellek yapısı


Daha sonra, makinenin depolama aygıtının ana çalışma alanı olan RAM (RAM - Rastgele Erişim Belleği veya rastgele erişim belleği) gelir. Önbellek tarafından yerine getirilemeyen tüm CPU istekleri işlenmek üzere RAM'e gönderilir. Birimler yüzlerce megabayttan birkaç gigabayta kadar değişir. Erişim süresi onlarca nanosaniyedir.

Daha sonra manyetik disk geliyor. Disk belleği, bit başına RAM'den iki kat daha ucuzdur ve boyutu da iki kat daha büyüktür. Diskin bir sorunu var; içindeki verilere rastgele erişim yaklaşık üç kat daha uzun sürüyor. Sabit disk sürücülerin (HDD) hızının yavaş olmasının nedeni sürücünün mekanik bir yapıda olmasıdır. Belirli hızlarda, örneğin 7200 rpm'de dönen bir veya daha fazla metal plakadan oluşur. Disk hacimleri artık hızla artıyor; yüzlerce gigabaytlık diskler çoğu kullanıcı için satışta. Erişim süresi – 10 µs'den az değil.

Manyetik bant genellikle oluşturmak için kullanılır yedek kopyalar HDD veya çok büyük veri kümelerini depolamak için. Şimdi, elbette, manyetik bantların kullanımını bulabileceğiniz yerler nadirdir, ancak yine de henüz kullanımdan kalkmamışlardır. Manyetik bant düzeyi ayrıca CD'leri, DVD'leri ve flash belleği de içerir. Erişim süresi saniye cinsinden ölçülür.

Açıklanan türlere ek olarak bilgisayarlarda az miktarda kalıcı rastgele erişim belleği bulunur. RAM'in aksine, güç kapatıldığında içeriğini kaybetmez. Buna ROM veya ROM denir. ROM üretim sırasında programlanır ve içeriği bundan sonra değiştirilemez. Bu bellek oldukça hızlı ve ucuzdur. Bilgisayarın başlangıçta kullanılan önyükleme programları ROM'da bulunur. Ayrıca bazı G/Ç kartlarında düşük seviyeli aygıtları kontrol etmek için ROM bulunur. CMOS adı verilen bir bellek türü geçicidir. CMOS, geçerli tarihi, saati ve yapılandırma parametrelerini saklamak için kullanılır; sabit disk yük. Bu bellek, takılı pilden güç alır.

G/Ç cihazları

İşletim sistemi G/Ç aygıtlarını kaynak olarak ele alır. G/Ç aygıtları genellikle bir denetleyiciden ve aygıtın kendisinden oluşur.

Denetleyici, bir fiziksel kontrol cihazı olan bir konektöre yerleştirilmiş bir kart üzerindeki bir dizi çiptir. İşletim sistemi komutlarını (örneğin, bir cihazdan veri okuma talimatları) kabul eder ve bunları yürütür. Cihazın gerçek kontrolü çok karmaşıktır ve yüksek seviye detaylandırma. Bu nedenle denetleyicinin işlevi işletim sistemine basit bir arayüz sağlamaktır.

Bir sonraki kısım cihazın kendisidir. Cihazların yetenekleri sınırlı olduğundan ve tek bir standarda getirilmesi gerektiğinden oldukça basit arayüzlere sahiptir. Örneğin, her IDE disk denetleyicisinin (Entegre Sürücü Elektroniği) herhangi bir IDE diskini yönetebilmesi için tek bir standarda ihtiyaç vardır. IDE arayüzü, Pentium işlemcili bilgisayarlardaki ve diğer bilgisayarlardaki sürücüler için standarttır. Gerçek cihaz arayüzü denetleyici tarafından gizlendiğinden, işletim sistemi yalnızca cihazın arayüzünden çok farklı olabilecek denetleyici arayüzünü görür.

Her kontrolör tipi farklı olduğundan farklı yazılımlara ihtiyaç duyarlar. Denetleyiciyle iletişim kuran program aygıt sürücüsüdür. Her denetleyici üreticisinin, desteklenen işletim sistemleri için sürücüler sağlaması gerekir. Sürücüyü kullanmak için, çekirdek modunda çalışabilmesi için işletim sistemine yüklenmiş olması gerekir. Çekirdeğe sürücü yüklemenin üç yolu vardır:

Çekirdeği yeni bir sürücüyle yeniden oluşturun ve ardından işletim sistemini yeniden başlatın (birçok Unix işletim sistemi bu şekilde çalışır);

İşletim sisteminde bulunan dosyada bir sürücünün gerekli olduğunu belirten bir giriş oluşturun ve ardından sistemi yeniden başlatın; ilk önyükleme sırasında işletim sistemi gerekli sürücüleri kendisi bulur ve yükler (Windows bu şekilde çalışır);

İşletim sistemi, yeni sürücüleri çalışmayı kesintiye uğratmadan kabul edebilir ve yeniden başlatmaya gerek kalmadan hızlı bir şekilde yükleyebilir. Bu yöntem giderek daha yaygın hale geliyor. USB veri yolları, IEEE 1394 gibi cihazlar her zaman dinamik olarak yüklenmiş sürücülere ihtiyaç duyar.

Veri girişi/çıkışı üç şekilde yapılabilir: Farklı yollar.

En basit yol: Kullanıcı programı, çekirdeğin sürücüye karşılık gelen bir prosedür çağrısına dönüştürdüğü bir sistem isteği gönderir, ardından sürücü I/O işlemini başlatır. Bu süre zarfında, birlikte çalıştığı cihazı sürekli yoklayarak kısa bir program döngüsü gerçekleştirir. G/Ç tamamlandığında sürücü, verileri ihtiyaç duyulan yere yerleştirir ve orijinal durumuna geri döner. İşletim sistemi daha sonra kontrolü çağrıyı yapan programa verir. Bu yöntem hazır olmayı bekliyor (aktif bekleme). Tek bir dezavantajı var: işlemci, cihaz kapanana kadar cihazı yoklamak zorunda.

Sürücü aygıtı başlatır ve G/Ç tamamlandığında aygıttan kesinti vermesini ister; Bundan sonra sürücü kontrolü işletim sistemine geri verir ve sistem diğer görevleri yerine getirmeye başlar. Denetleyici veri aktarımının sonunu algıladığında bir tamamlama kesmesi oluşturur. Kesintileri kullanan G/Ç işlemi dört adımdan oluşur (Şekil 3). İlk adımda sürücü, denetleyiciye bir komut ileterek aygıt kayıtlarına bilgi yazar. Kontrolör daha sonra cihazı başlatır. Denetleyici, aktarması söylenen bayt sayısını okumayı veya yazmayı bitirdiğinde, belirli veri yolu kablolarını kullanarak kesme denetleyici çipine bir sinyal gönderir. Bu ikinci adımdır. Üçüncü adımda, eğer kesme denetleyicisi kesmeleri işlemeye hazırsa, CPU'nun belirli bir pinine bir sinyal göndererek onu bilgilendirir. Dördüncü adımda, kesme denetleyicisi veri yoluna bir aygıt numarası ekler, böylece CPU hangi aygıtın işini tamamladığını bilir.

Giriş-çıkış bilgilerinin üçüncü yöntemi kullanmaktır. özel kontrolör doğrudan bellek erişimi DMA (Doğrudan Bellek Erişimi). DMA, CPU müdahalesi olmadan RAM ile bazı denetleyiciler arasındaki bit akışını yönetir. İşlemci DMA çipine erişir ve ona aktarılacak bayt sayısını, ayrıca cihaz ve hafıza adresini ve veri aktarım yönünü söyler. İşin tamamlanmasının ardından DMA, olağan şekilde işlenen bir kesinti başlatır.


Şekil 3 - Bir G/Ç cihazı başlatıldığında ve bir kesinti aldığında gerçekleştirilen eylemler


Lastikler

İşlemci ve bellek hızının artmasına bağlı olarak hem I/O cihazlarının iletişimini hızlandırmak hem de işlemci ile bellek arasında veri aktarımını sağlamak amacıyla sisteme ek veri yolları eklendi. Şekil 4, ilk Pentium'ların bilgi işlem sisteminin bir diyagramını göstermektedir.

Bu sistemde her biri kendi veri aktarım hızına ve kendi işlevlerine sahip 8 veri yolu (önbellek veri yolu, yerel veri yolu, bellek veri yolu, PCI, SCSI, USB, IDE, ISA) bulunur. İşletim sisteminin bilgisayarı yönetebilmesi için tüm bu veri yolları hakkında bilgiye sahip olması gerekir.

Merkezi işlemci, verileri yerel veri yolu aracılığıyla PCI köprü çipine iletir ve bu yonga, belleğe özel bir veri yolu aracılığıyla erişir. Pentium I sistemi, işlemciye yerleşik bir Düzey 1 önbelleğe (L1) ve işlemciye ayrı bir önbellek veriyolu üzerinden bağlanan çok daha büyük bir Düzey 2 önbelleğe (L2) sahiptir. IDE veri yolu, çevresel aygıtları sisteme (CD-ROM, sabit sürücü) bağlamak için kullanılır.


Şekil 4 – Pentium sistem yapısı


USB (Evrensel Seri Veri Yolu) veri yolu, klavye, fare, yazıcı, flash bellek vb. gibi ek giriş/çıkış aygıtlarını bir bilgisayara bağlamak için tasarlanmıştır. Zamanla yeni, daha hızlı lastikler ortaya çıkar ve eklenir.

İşletim sistemlerine kısa bir giriş. öğretici Peter Stashchuk

(Henüz derecelendirme yok)

Başlık: İşletim sistemlerine kısa giriş. öğretici

Peter Stashchuk kitabı hakkında “İşletim Sistemlerine Kısa Bir Giriş. Öğretici"

Bilgisayar teknolojisinin kullanımı, temeli işletim sistemleri ve kabukları olan modern yazılım bilgisi olmadan etkili olamaz. Önerilen teorik dersi inceleyerek öğrenciler işletim sistemlerinin yeteneklerini, yapılarını, organizasyon ve çalışma prensiplerini, konfigürasyon kurallarını vb. Nitelikli bir kullanıcının eğitimi ve mesleki faaliyetler sırasında modern yazılımın kullanımında pratik becerilerin pekiştirilmesine yardımcı olacaktır.

Öğrenciler, lisansüstü öğrenciler, üniversite öğretmenleri için.

Kitaplarla ilgili web sitemizde, siteyi kayıt olmadan ücretsiz olarak indirebilir veya Peter Stashchuk'un “İşletim Sistemlerine Kısa Bir Giriş” kitabını çevrimiçi okuyabilirsiniz. Çalışma Kılavuzu" iPad, iPhone, Android ve Kindle için epub, fb2, txt, rtf, pdf formatlarında. Kitap size çok hoş anlar ve okumaktan gerçek bir zevk verecek. Satın almak tam versiyon ortağımızdan yapabilirsiniz. Ayrıca burada edebiyat dünyasından en son haberleri bulacak, en sevdiğiniz yazarların biyografisini öğreneceksiniz. Yeni başlayan yazarlar için, edebi el sanatlarında kendinizi deneyebileceğiniz yararlı ipuçları ve püf noktaları, ilginç makaleler içeren ayrı bir bölüm vardır.

Peter Stashchuk'un “İşletim Sistemlerine Kısa Bir Giriş” kitabından alıntılar. Öğretici"

Ana bilgisayar kaynaklarını yönetmek (işlemciler, bellek, harici cihazlar), kullanılan tasarım yöntemlerinin özellikleri, donanım platformlarının çeşitleri, uygulama alanları.

İşletim sistemi, kullanıcıyı doğrudan bilgisayar donanımıyla çalışmaktan korur ve ona basit bir arayüz sağlayarak düşük seviyeli donanım yönetimi sorunlarını bağımsız olarak çözer.

İşletim sistemi, veri yönetimini ve kullanıcı programlarının yürütülmesini sağlayan, bilgisayar kaynaklarının dağıtımını koordine eden ve kullanıcılarla etkileşimi destekleyen bir dizi programdır.

İlk işletim sistemi toplu işleme sistemleriydi (yerleşik monitörler).

Bir bilgisayar sistemi (CS), kullanıcı bilgileri sorunlarının çözümünü otomatikleştirmek için tasarlanmış bir donanım ve yazılım kompleksidir.

Bulunduğunuz sayfa: 1 (kitabın toplam 12 sayfası vardır) [mevcut okuma parçası: 8 sayfa]

A. Yu.
işletim sistemi

1İşletim Sistemlerine Başlarken

1.1 İşletim sistemlerinin amacı ve işlevleri

Bilgisayar işletim sistemi, bir yandan uygulamalar ve kullanıcılar, diğer yandan bilgisayar donanımı arasında bir arayüz görevi gören, birbiriyle ilişkili bir dizi programdır. İşletim sistemi iki grup işlevi gerçekleştirir:

Kullanıcıya veya programcıya gerçek bilgisayar donanımı yerine genişletilmiş bir sanal makine sağlar;

Kaynaklarını bazı kriterlere uygun olarak rasyonel bir şekilde yöneterek bilgisayar kullanımının verimliliğini artırır.

Kullanıcı, kural olarak, bilgisayar donanımının ayrıntılarıyla ilgilenmez; onu programlama dillerinden birinde yazılabilen bir dizi uygulama olarak görür. İşletim sistemi programcıya, programların sistem çağrıları adı verilen özel komutlar aracılığıyla kullanabileceği bir dizi yetenek sağlar. Bu nedenle bir yazılım uygulaması, örneğin dosyalarla çalışmak için gerekli olan birçok sistem çağrısını içerir. İşletim sistemi donanım ayrıntılarını programcıdan gizler ve işletim ortamı sisteminin yürütülmesi için uygun bir arayüz sağlar.

İşletim sistemi aynı zamanda kaynak yöneticisi görevi de görür. Bu yaklaşıma göre işletim sisteminin görevi işlemcilerin, belleğin ve G/Ç aygıtlarının çeşitli programlar arasında düzenli ve kontrollü dağılımını sağlamaktır. İşletim sistemi aşağıdaki özelliklere sahiptir:

İşletim sisteminin işlevleri diğer yazılımlarla aynı şekilde çalışır - bunlar bireysel programlar veya bir dizi program, yürütme süreçleri biçiminde uygulanır;

İşletim sistemi kontrolü diğer işlemlere devretmeli ve işlemcinin görevlerini yerine getirmesi için kendisine tekrar zaman vermesini beklemelidir.

Kaynak yönetimi, kaynağın türüne bağlı olmayan aşağıdaki genel görevlerin çözülmesini içerir:

Kaynak planlama - yani, belirli bir kaynağa hangi sürecin, ne zaman ve hangi miktarda (kaynak kısımlar halinde tahsis edilebiliyorsa) tahsis edilmesi gerektiğinin belirlenmesi;

Kaynak isteklerinin karşılanması;

Bir kaynağın durumunun izlenmesi ve kullanımının kaydedilmesi - yani kaynağın meşgul veya boş olup olmadığı ve kaynağın hangi payının halihazırda dağıtıldığına ilişkin operasyonel bilgilerin sürdürülmesi;

Süreçler arasındaki çatışmaların çözülmesi.

Kaynak yönetimi, bunların çoğullanmasını (dağıtımını) iki şekilde içerir: zaman ve mekanda. Bir kaynak zaman içinde tahsis edildiğinde, farklı kullanıcılar ve programlar onu sırayla kullanır. Önce biri kaynağı kullanmak için erişim elde eder, sonra diğeri vb. Örneğin, birkaç program merkezi işlemciye erişmek ister. Bu durumda, işletim sistemi önce bir programın işlemciye erişmesine izin verir, ardından yeterli bir süre çalıştıktan sonra başka bir programa, ardından bir sonrakine ve son olarak tekrar ilkine erişim sağlar. Bir kaynağın zaman içinde ne kadar süre kullanılacağını, sıradakinin kim olacağını ve kaynağın onlara ne kadar süreyle verileceğini belirlemek işletim sisteminin görevidir. Diğer bir dağıtım türü ise uzaysal çoğullamadır. Dönüşümlü olarak çalışmak yerine her müşteri kaynağın bir kısmını alır. Tipik olarak RAM, birden fazla çalışan program arasında paylaşılır, böylece hepsi aynı anda bellekte bulunabilir (örneğin, merkezi işlemciyi sırayla kullanarak). Birden çok programı tutacak yeterli belleğin olduğunu varsayarsak, belleğin tamamını tek bir programa ayırmak yerine, belleğe aynı anda birden çok program ayırmak, özellikle de kullanılabilir belleğin yalnızca küçük bir kısmına ihtiyaç duyuyorsa daha verimlidir. Elbette bu, adil dağıtım, hafıza koruması vb. sorunları gündeme getiriyor ve işletim sistemi bu tür sorunları çözmek için var.

1.2 İşletim sistemlerinin gelişim tarihi

Genellikle işletim sistemlerinin gelişim tarihi, bilgisayarların gelişim tarihi ile ilişkilidir. Bilgisayara ilişkin ilk fikir, on dokuzuncu yüzyılın ortalarında İngiliz matematikçi Charles Babbage tarafından ortaya atıldı. Hiçbir zaman düzgün çalışmayan, mekanik "analitik motor" olarak adlandırılan makineyi geliştirdi. Aşağıda bilgisayar nesilleri ve bunların işletim sistemleriyle ilişkileri yer almaktadır.

Birinci nesil 1945-1955

Bilgisayarlar vakum tüplerinden ve yama panellerinden oluşuyordu. En büyük başarı delikli kartların üretimidir. İnce kartondan yapılmış delikli kart, kartın belirli konumlarındaki deliklerin varlığı veya yokluğuyla bilgiyi temsil eder. İşletim sistemi yok.

İkinci nesil 1955-1965

Bilgisayarların temeli transistörler ve toplu işlem sistemleridir. Manyetik bantları kaydetmek için delikli kart desteleri ve cihazlarla karakterize edilir. Fortran Monitör Sistemi (FMS) ve IBSYS işletim sistemleri için ağırlıklı olarak Fortran ve Assembly dillerinde programlanmıştır.

Üçüncü nesil 1965-1980

Dönem, entegre devrelerin ortaya çıkışının yanı sıra çoklu görev veya başka bir deyişle çoklu programlama ile karakterize edilir. IBM, IBM/360'tan başlayarak çeşitli makine serileri üretmektedir. İkinci nesil FMS'den yaklaşık 1000 kat daha büyük olan OS/360 işletim sistemi onlar için yazılmıştır. Bu aşamada, çoklu görevin endüstriyel bir uygulaması ortaya çıkıyor - birkaç programın aynı anda bilgisayar belleğinde depolandığı ve dönüşümlü olarak bir işlemcide yürütüldüğü bir bilgi işlem sürecini organize etme yöntemi.

Bu dönemin diğer önemli işletim sistemleri CTSS (Uyumlu Zaman Paylaşım Sistemi) ve yüzlerce kullanıcının tek bir makineye aynı anda erişmesini sağlamak üzere tasarlanan MULTICS (Multiplex Bilgi ve Bilgi İşlem Hizmeti) idi. Bu sistemin daha da geliştirilmesi UNIX'e dönüştü.

Dördüncü nesil 1980'den günümüze

Bu dönem büyük ölçekli entegre devrelerin ortaya çıkışıyla ilişkilidir. 1974 yılında Intel, ilk evrensel 8 bit işlemci olan Intel 8080'i piyasaya sürdü. 80'lerin başında IBM, kişisel bir bilgisayar olan IBM PC'yi geliştirdi. Aynı zamanda MS-DOS'un ilk sürümü ortaya çıktı. Bu noktaya kadar geliştirilen tüm işletim sistemleri, kullanıcıyla yalnızca metin iletişim modunu destekliyordu.

Kullanıcı dostu bir grafik arayüz oluşturmaya yönelik ilk girişim Apple Macintosh'ta uygulandı. Başarılarından etkilenen Microsoft Corporation, MS-DOS - Windows için grafiksel bir kabuk yayınladı. Ve 1995'ten beri bağımsız bir sistem haline gelen Windows 95 piyasaya sürüldü. Daha sonra, Windows 95 ve başka bir Windows NT sistemi temel alınarak şu anda mevcut olan işletim sistemleri geliştirildi - Windows 2000, XP, Vista ve diğerleri.

1.3 İşletim sistemlerinin sınıflandırılması

Pek çok işletim sistemi var ve herkes bunları bilmiyor. Daha sonra, büyükten küçüğe 7 farklı işletim sistemini ele alacağız.

Ana Bilgisayar İşletim Sistemleri

Ana bilgisayar, yoğun bilgi işlem işlerini gerçekleştirmek için tasarlanmış, önemli miktarda RAM ve harici belleğe sahip, yüksek performanslı, genel amaçlı bir bilgisayardır. Bunlar genellikle oda büyüklüğünde bilgisayarlardır ve büyük şirketlerde bulunur. Ana bilgisayarlar genellikle binlerce disk ve terabaytlarca RAM içerir.

Ana bilgisayar işletim sistemleri öncelikle, çoğu büyük miktarda I/O gerektiren birden fazla eşzamanlı işi yürütmek üzere tasarlanmıştır. Sistemin saniyede binlerce isteğe yanıt vermesi gerekiyor. Bir örnek, 3. nesil işletim sistemi OS/360'tan geliştirilen OS/390'dır.

Sunucu işletim sistemleri

Bu işletim sistemleri kişisel bilgisayar, iş istasyonu ve hatta ana bilgisayar gibi sunucularda çalışır. Sunucular yazdırma aygıtları, dosyalar veya İnternet ile çalışma olanağı sağlar. Bu tür işletim sistemleri arasında Unix, Linux, Windows 2003 Server vb. bulunur.

Çok işlemcili işletim sistemleri

Bu sistemler birden fazla merkezi işlemciye sahip bilgisayarlarda kullanılmaktadır. Özel işletim sistemleri gerektirirler ancak genellikle sunucu işletim sistemlerinin modifikasyonlarıdır.

Kişisel bilgisayarlar için işletim sistemleri

Bu sistemlerin ana kriteri tek kullanıcı için uygun bir arayüzdür. En ünlü sistemler: Windows 98, 2000, XP, Vista serisi; Macintosh, Linux.

Gerçek zamanlı işletim sistemleri

Bu sistemlerin ana parametresi zamandır. Endüstriyel proses kontrol sistemlerinde konveyörün ve çeşitli endüstriyel robotların çalışma sürelerinin net bir şekilde senkronize edilmesi gerekmektedir. Bu zor bir gerçek zamanlı sistemdir. Multimedya sistemleri gibi, bir işlemin tamamlanması için son teslim tarihlerinin kaçırılmasının kabul edilebilir olduğu esnek gerçek zamanlı sistemler de vardır. Gerçek zamanlı işletim sistemleri arasında VxWorks ve QNX bulunur.

Gömülü işletim sistemleri

Bunlara “cep bilgisayarları” PDA (Kişisel Dijital Asistan) için işletim sistemleri de dahildir. Ayrıca gömülü sistemler arabalarda, televizyonlarda ve cep telefonlarında da çalışmaktadır. Bu işletim sistemleri tipik olarak bellek, güç vb. sınırlamalarla birlikte gerçek zamanlı işletim sistemlerinin tüm özelliklerine sahiptir. Sistem örnekleri PalmOS, Windows CE'dir.

Akıllı kartlar için işletim sistemleri

Akıllı kart, merkezi bir işlem birimi içeren, kredi kartı boyutunda bir cihazdır. Bu tür sistemler ciddi güç ve bellek sınırlamalarına tabidir. Bazıları yalnızca tek bir işlemi yönetir; örneğin elektronik ödeme. Belirli akıllı kartlar Java Sanal Makinesi desteğini içerir.

1.4 Bilgisayar donanımına genel bakış

Bir işletim sistemi, üzerinde çalışması gereken bilgisayarın donanımıyla yakından ilgilidir. Donanım, işletim sisteminin komut setini ve kaynaklarının yönetimini etkiler. Kavramsal olarak basit bir bilgisayar Şekil 1'de gösterilen modelle temsil edilebilir. Bu yapı ilk IBM PC modellerinde kullanıldı.


Şekil 1 - Kişisel bilgisayarın bazı bileşenleri


Şekilde, merkezi işlemci, bellek ve giriş/çıkış aygıtları, bilgi alışverişinde bulundukları bir sistem veri yolu ile birbirine bağlanmıştır.

İşlemci

Bir bilgisayarın “beyni” merkezi işlem birimidir (CPU). Bellekten komutları seçer ve yürütür. Tipik bir işlemci döngüsü şuna benzer: bellekten ilk talimatı okur, türünü ve işlenenlerini belirlemek için kodunu çözer, talimatı yürütür, ardından sonraki talimatları okur ve kodunu çözer. Programlar bu şekilde yürütülür.

Her işlemci için yürütebileceği bir dizi talimat vardır. Talimatları almak veya verileri almak için belleğe erişim, bu talimatların yürütülmesinden çok daha uzun sürdüğünden, tüm işlemciler, değişkenleri ve ara sonuçları depolamak için dahili kayıtlar içerir. Bu nedenle, talimat seti genellikle bir sözcüğü bellekten bir kayda yüklemek ve bir sözcüğü bir kayıttan belleğe depolamak için talimatlar içerir. Değişkenleri depolamak için kullanılan ana kayıtlara ek olarak çoğu işlemcide, programcıların görebileceği özel kayıtların yanı sıra değişkenleri depolamak için kullanılan birkaç özel kayıt bulunur.

İşlemci zaman çoğullama işlemine tabi tutulduğunda, işletim sistemi çalışan bir programı durdurarak başka bir programı başlatır. Böyle bir kesinti meydana geldiğinde, işletim sisteminin işlemcinin tüm kayıtlarını kaydetmesi gerekir; böylece daha sonra kesintiye uğrayan program çalışmaya devam ettiğinde bu kayıtlar geri yüklenebilir.

CPU'nun hızını artırmak için geliştiriciler, bir saat döngüsünde yalnızca bir komutun okunabildiği, kodunun çözülebildiği ve yürütülebildiği basit modeli terk etti. Modern işlemciler aynı anda birden fazla komutu yürütme yeteneğine sahiptir.

Çoğu CPU'nun iki çalışma modu vardır: çekirdek modu ve kullanıcı modu. İşlemci çekirdek modunda çalışıyorsa, komut setindeki tüm talimatları yürütebilir ve donanımın tüm yeteneklerini kullanabilir. İşletim sistemi çekirdek modunda çalışarak tüm donanıma erişim sağlar. Bunun tersine, kullanıcılar, programların bir alt kümesinin yürütülmesine izin veren ve donanımın yalnızca bir kısmını kullanılabilir hale getiren kullanıcı modunda çalışır.

Hafıza

Herhangi bir bilgisayarın ikinci ana bileşeni bellektir. İdeal olarak, bellek mümkün olduğu kadar hızlı olmalıdır (tek bir talimatı işlemekten daha hızlıdır, böylece işlemci yeterince büyük ve son derece ucuz belleğe erişerek yavaşlamaz). Bugün bu gereksinimlerin tamamını karşılayan hiçbir teknoloji yoktur. Bu nedenle başka bir yaklaşım daha var.

Bellek sistemi, Şekil 2'de gösterilen katmanlar hiyerarşisi şeklinde yapılandırılmıştır. Hiyerarşide yukarıdan aşağıya doğru ilerledikçe iki parametre artar: erişim süresi, bellek boyutu.

Üst katman CPU'nun dahili kayıtlarından oluşur, dolayısıyla bunlara erişimde herhangi bir gecikme yaşanmaz. Dahili kayıtlar 1Kb'den daha az bilgi depolar. Programlar, donanım müdahalesi olmadan kayıtları yönetebilir. Kayıt erişimi en hızlısıdır - birkaç nanosaniye.

Bir sonraki katman, çoğunlukla donanım tarafından kontrol edilen önbellek içerir. En sık kullanılan önbellek alanları, CPU'nun içinde bulunan yüksek hızlı önbellekte saklanır. Bir programın bellekten bir kelime okuması gerektiğinde, önbellek yongası istenen satırın önbellekte olup olmadığını belirler; eğer öyleyse, o zaman bir önbellek erişimi gerçekleşir. Yüksek maliyeti nedeniyle önbellek boyutu sınırlıdır. Modern makinelerin her biri bir öncekinden daha yavaş ve daha büyük olan iki veya üç önbellek düzeyi vardır. Önbellek boyutları onlarca kilobayttan birkaç megabayta kadar değişir. Erişim süresi kayıtlara göre biraz daha uzundur.


Şekil 2 – Hiyerarşik bellek yapısı


Daha sonra, makinenin depolama aygıtının ana çalışma alanı olan RAM (RAM - Rastgele Erişim Belleği veya rastgele erişim belleği) gelir. Önbellek tarafından yerine getirilemeyen tüm CPU istekleri işlenmek üzere RAM'e gönderilir. Birimler yüzlerce megabayttan birkaç gigabayta kadar değişir. Erişim süresi onlarca nanosaniyedir.

Daha sonra manyetik disk geliyor. Disk belleği, bit başına RAM'den iki kat daha ucuzdur ve boyutu da iki kat daha büyüktür. Diskin bir sorunu var; içindeki verilere rastgele erişim yaklaşık üç kat daha uzun sürüyor. Sabit disk sürücülerin (HDD) hızının yavaş olmasının nedeni sürücünün mekanik bir yapıda olmasıdır. Belirli hızlarda, örneğin 7200 rpm'de dönen bir veya daha fazla metal plakadan oluşur. Disk hacimleri artık hızla artıyor; yüzlerce gigabaytlık diskler çoğu kullanıcı için satışta. Erişim süresi – 10 µs'den az değil.

Manyetik bant genellikle HDD yedeklemeleri oluşturmak veya çok büyük veri kümelerini depolamak için kullanılır. Şimdi, elbette, manyetik bantların kullanımını bulabileceğiniz yerler nadirdir, ancak yine de henüz kullanımdan kalkmamışlardır. Manyetik bant düzeyi ayrıca CD'leri, DVD'leri ve flash belleği de içerir. Erişim süresi saniye cinsinden ölçülür.

Açıklanan türlere ek olarak bilgisayarlarda az miktarda kalıcı rastgele erişim belleği bulunur. RAM'in aksine, güç kapatıldığında içeriğini kaybetmez. Buna ROM veya ROM denir. ROM üretim sırasında programlanır ve içeriği bundan sonra değiştirilemez. Bu bellek oldukça hızlı ve ucuzdur. Bilgisayarın başlangıçta kullanılan önyükleme programları ROM'da bulunur. Ayrıca bazı G/Ç kartlarında düşük seviyeli aygıtları kontrol etmek için ROM bulunur. CMOS adı verilen bir bellek türü geçicidir. CMOS, geçerli tarih, saat ve hangi sabit sürücüden önyükleme yapılacağı gibi yapılandırma parametrelerini depolamak için kullanılır. Bu bellek, takılı pilden güç alır.

G/Ç cihazları

İşletim sistemi G/Ç aygıtlarını kaynak olarak ele alır. G/Ç aygıtları genellikle bir denetleyiciden ve aygıtın kendisinden oluşur.

Denetleyici, bir fiziksel kontrol cihazı olan bir konektöre yerleştirilmiş bir kart üzerindeki bir dizi çiptir. İşletim sistemi komutlarını (örneğin, bir cihazdan veri okuma talimatları) kabul eder ve bunları yürütür. Cihazın gerçek kontrolü çok karmaşıktır ve yüksek düzeyde ayrıntı gerektirir. Bu nedenle denetleyicinin işlevi işletim sistemine basit bir arayüz sağlamaktır.

Bir sonraki kısım cihazın kendisidir. Cihazların yetenekleri sınırlı olduğundan ve tek bir standarda getirilmesi gerektiğinden oldukça basit arayüzlere sahiptir. Örneğin, her IDE disk denetleyicisinin (Entegre Sürücü Elektroniği) herhangi bir IDE diskini yönetebilmesi için tek bir standarda ihtiyaç vardır. IDE arayüzü, Pentium işlemcili bilgisayarlardaki ve diğer bilgisayarlardaki sürücüler için standarttır. Gerçek cihaz arayüzü denetleyici tarafından gizlendiğinden, işletim sistemi yalnızca cihazın arayüzünden çok farklı olabilecek denetleyici arayüzünü görür.

Her kontrolör tipi farklı olduğundan farklı yazılımlara ihtiyaç duyarlar. Denetleyiciyle iletişim kuran program aygıt sürücüsüdür. Her denetleyici üreticisinin, desteklenen işletim sistemleri için sürücüler sağlaması gerekir. Sürücüyü kullanmak için, çekirdek modunda çalışabilmesi için işletim sistemine yüklenmiş olması gerekir. Çekirdeğe sürücü yüklemenin üç yolu vardır:

Çekirdeği yeni bir sürücüyle yeniden oluşturun ve ardından işletim sistemini yeniden başlatın (birçok Unix işletim sistemi bu şekilde çalışır);

İşletim sisteminde bulunan dosyada bir sürücünün gerekli olduğunu belirten bir giriş oluşturun ve ardından sistemi yeniden başlatın; ilk önyükleme sırasında işletim sistemi gerekli sürücüleri kendisi bulur ve yükler (Windows bu şekilde çalışır);

İşletim sistemi, yeni sürücüleri çalışmayı kesintiye uğratmadan kabul edebilir ve yeniden başlatmaya gerek kalmadan hızlı bir şekilde yükleyebilir. Bu yöntem giderek daha yaygın hale geliyor. USB veri yolları, IEEE 1394 gibi cihazlar her zaman dinamik olarak yüklenmiş sürücülere ihtiyaç duyar.

Veri girişi ve çıkışı üç farklı şekilde yapılabilir.

En basit yol: Kullanıcı programı, çekirdeğin sürücüye karşılık gelen bir prosedür çağrısına dönüştürdüğü bir sistem isteği gönderir, ardından sürücü I/O işlemini başlatır. Bu süre zarfında, birlikte çalıştığı cihazı sürekli yoklayarak kısa bir program döngüsü gerçekleştirir. G/Ç tamamlandığında sürücü, verileri ihtiyaç duyulan yere yerleştirir ve orijinal durumuna geri döner. İşletim sistemi daha sonra kontrolü çağrıyı yapan programa verir. Bu yöntem hazır olmayı bekliyor (aktif bekleme). Tek bir dezavantajı var: işlemci, cihaz kapanana kadar cihazı yoklamak zorunda.

Sürücü aygıtı başlatır ve G/Ç tamamlandığında aygıttan kesinti vermesini ister; Bundan sonra sürücü kontrolü işletim sistemine geri verir ve sistem diğer görevleri yerine getirmeye başlar. Denetleyici veri aktarımının sonunu algıladığında bir tamamlama kesmesi oluşturur. Kesintileri kullanan G/Ç işlemi dört adımdan oluşur (Şekil 3). İlk adımda sürücü, denetleyiciye bir komut ileterek aygıt kayıtlarına bilgi yazar. Kontrolör daha sonra cihazı başlatır. Denetleyici, aktarması söylenen bayt sayısını okumayı veya yazmayı bitirdiğinde, belirli veri yolu kablolarını kullanarak kesme denetleyici çipine bir sinyal gönderir. Bu ikinci adımdır. Üçüncü adımda, eğer kesme denetleyicisi kesmeleri işlemeye hazırsa, CPU'nun belirli bir pinine bir sinyal göndererek onu bilgilendirir. Dördüncü adımda, kesme denetleyicisi veri yoluna bir aygıt numarası ekler, böylece CPU hangi aygıtın işini tamamladığını bilir.

Bilgi giriş/çıkışının üçüncü yöntemi, özel bir DMA (Doğrudan Bellek Erişimi) denetleyicisinin kullanılmasıdır. DMA, CPU müdahalesi olmadan RAM ile bazı denetleyiciler arasındaki bit akışını yönetir. İşlemci DMA çipine erişir ve ona aktarılacak bayt sayısını, ayrıca cihaz ve hafıza adresini ve veri aktarım yönünü söyler. İşin tamamlanmasının ardından DMA, olağan şekilde işlenen bir kesinti başlatır.


Şekil 3 - Bir G/Ç cihazı başlatıldığında ve bir kesinti aldığında gerçekleştirilen eylemler


Lastikler

İşlemci ve bellek hızının artmasına bağlı olarak hem I/O cihazlarının iletişimini hızlandırmak hem de işlemci ile bellek arasında veri aktarımını sağlamak amacıyla sisteme ek veri yolları eklendi. Şekil 4, ilk Pentium'ların bilgi işlem sisteminin bir diyagramını göstermektedir.

Bu sistemde her biri kendi veri aktarım hızına ve kendi işlevlerine sahip 8 veri yolu (önbellek veri yolu, yerel veri yolu, bellek veri yolu, PCI, SCSI, USB, IDE, ISA) bulunur. İşletim sisteminin bilgisayarı yönetebilmesi için tüm bu veri yolları hakkında bilgiye sahip olması gerekir.

Merkezi işlemci, verileri yerel veri yolu aracılığıyla PCI köprü çipine iletir ve bu yonga, belleğe özel bir veri yolu aracılığıyla erişir. Pentium I sistemi, işlemciye yerleşik bir Düzey 1 önbelleğe (L1) ve işlemciye ayrı bir önbellek veriyolu üzerinden bağlanan çok daha büyük bir Düzey 2 önbelleğe (L2) sahiptir. IDE veri yolu, çevresel aygıtları sisteme (CD-ROM, sabit sürücü) bağlamak için kullanılır.


Şekil 4 – Pentium sistem yapısı


USB (Evrensel Seri Veri Yolu) veri yolu, klavye, fare, yazıcı, flash bellek vb. gibi ek giriş/çıkış aygıtlarını bir bilgisayara bağlamak için tasarlanmıştır. Zamanla yeni, daha hızlı lastikler ortaya çıkar ve eklenir.

Andrew Tanenbaum, modern işletim sistemlerinin işleyişini anlamak için gerekli olan, dünya çapında en çok satan kitabının yeni baskısını sunuyor. Öncekinden önemli ölçüde farklıdır ve alandaki en son gelişmeler hakkında bilgi içerir. Bilişim Teknolojileri. Örneğin, Windows Vista ile ilgili bölümün yerini, bu yazının yazıldığı sırada en güncel sürüm olan Windows 8.1'e ayrıntılı bir bakış almıştır. Ameliyathaneye ayrılmış geniş bir bölüm ortaya çıktı Android sistemi. Unix ve Linux'un yanı sıra RAID sistemlerine ilişkin materyal güncellendi. Son birkaç yılda önemi artan çok çekirdekli ve çok çekirdekli sistemlere çok daha fazla önem verilmeye başlandı. Sanallaştırma ve bulut bilişim konusunda yepyeni bir bölüm var. Kod hatalarının kullanımıyla ilgili çok sayıda yeni materyal eklendi. kötü amaçlı yazılım ve uygun koruyucu önlemler. Kitapta başka hiçbir kitapta bulunmayan pek çok önemli ayrıntı açık ve ilgi çekici bir üslupla sunuluyor.

İşletim sistemi genişletilmiş bir makine gibidir.
Çoğu bilgisayarın mimarisi (komut sistemi, bellek organizasyonu, veri giriş/çıkış ve veri yolu yapısı), makine dili düzeyinde çok ilkeldir ve programlarda, özellikle giriş/çıkış sistemlerinde kullanım için uygun değildir. Konuyu belirli bir yöne taşımak için çoğu bilgisayarda kullanılan modern SATA (Seri ATA) sabit disklerine bakalım. Anderson tarafından 2007'de yayınlanan ve programcıların diski kullanmayı öğrenmesi gereken disk arayüzünün açıklamasını içeren kitap, 450'den fazla sayfa içeriyordu. Bundan sonra arayüz birçok kez revize edildi ve 2007'dekinden daha karmaşık hale geldi. Aklı başında hiçbir programcının böyle bir diskle donanım düzeyinde uğraşmak istemeyeceği açıktır. Bunun yerine donanım, disk sürücüsü adı verilen ve ayrıntıya girmeden disk bloklarını okumak ve yazmak için bir arayüz sağlayan bir yazılım parçası tarafından yönetilir. İşletim sistemleri, G/Ç aygıtlarını denetlemek için birçok sürücü içerir.

Ancak çoğu uygulama için bu seviye bile çok düşüktür. Bu nedenle, tüm işletim sistemleri disk kullanımı için başka bir soyutlama düzeyi sağlar - dosyalar. Bu soyutlamayı kullanarak programlar ayrıntılara girmeden dosyalar oluşturabilir, yazabilir ve okuyabilir. gerçek iş teçhizat.

İçerik
Önsöz
Bölüm 1. Giriş
Bölüm 2: Süreçler ve Konular
Bölüm 3: Bellek Yönetimi
Bölüm 4. Dosya Sistemleri
Bölüm 5. Bilgi girişi ve çıkışı
Bölüm 6. Kilitlenme
Bölüm 7. Sanallaştırma ve Bulut
Bölüm 8. Çok işlemcili sistemler
Bölüm 9. Güvenlik
Bölüm 10. Çalışma spesifik örnekler: Unix, Linux ve Android
Bölüm 11: Örnek Olaylar: Windows 8
Bölüm 12. İşletim Sistemleri Geliştirme
Bölüm 13. Kaynakça.

Ücretsiz indirin e-kitap uygun bir formatta izleyin ve okuyun:
Modern işletim sistemleri, Tanenbaum E., Bos X., 2015 - fileskachat.com kitabını indirin, hızlı ve ücretsiz indirin.

PDF İndir
Bu kitabı aşağıdan satın alabilirsiniz en iyi fiyat Rusya genelinde teslimatla indirimli.

İndirilenler: 8365

Artık tüm işletim sistemlerinin en ünlüsü şüphesiz Microsoft Corporation'ın Windows ailesidir. Ancak popülaritesine rağmen Windows dünyadaki ilk veya tek işletim sistemi değildir.


28.04.2014
Nathan Wallace, Anthony Sequeira - Windows® 2000 Kayıt Defteri

İndirilenler: 596

Öncelikle Coriolis Satın Alma Editörü Charlotte Carpentier'e teşekkür etmek istiyoruz. Ayrıca Proje Editörü olarak görev yapan Greg Balas'a ve kitabın Yapım Koordinatörü olarak görev yapan Peggy Cantrell'e de özel teşekkürler.


27.04.2014
A. Chekmarev - Windows 7 Yönetici Kılavuzu

İndirilenler: 12818

Microsoft Windows 7 İşletim Sistemi Kılavuzu ileri düzey kullanıcılara ve ağ yöneticilerine yöneliktir. Windows 7'nin tüm sürümlerinin sayısız yeteneği ortaya çıkıyor, sistemi kullanmanın tüm yönleri ayrıntılı olarak tartışılıyor: kurulumdan kurtarma yöntemlerine kadar.


27.04.2014
M. Russinovich - Microsoft Windows'un iç yapısı

İndirilenler: 9066

Bu efsanevi kitabın altıncı baskısı, iç yapı ameliyathanenin ana bileşenlerinin çalışması için algoritmalar ve algoritmalar Microsoft sistemleri Windows 7 ve Windows Server 2008 R2.


17.04.2014
Richard Simon - Microsoft Windows API'si. Sistem Programcısının El Kitabı

İndirilenler: 8967

Windows ailesinin işletim sistemleri, bu işletim sistemlerinin kontrolü altında çalışan uygulama uygulamalarının geliştirilmesine yönelik metodolojiyi tamamen yeni bir niteliksel düzeye taşımıştır. Güçlü yazılım oluşturma araçlarının çokluğuna rağmen, uygulama programlama arayüzü (API) bilgisi - her şeyin temeli - pazarda değerli bir konuma ulaşabilecek programlar yazmanın anahtarıdır.


17.04.2014
Arnold Robbins, Elbert Hannah ve Linda Lamb-Learning the vi ve Vim Editörleri. 7. baskı.

İndirilenler: 799

Zorlu Unix ve Linux kullanıcılarının metin editörlerinden daha fanatik olduğu hiçbir şey yoktur. Editörler, tartışma konusunun sizin editörünüz veya bir başkası olmasına bağlı olarak hayranlık ve tapınmanın veya küçümseme ve alay konusu olur. S. vi 30 yıla yakın süredir standart editördür. Unix ve Linux'ta popüler olan bu programın Windows sistemlerinde de giderek artan bir takipçi kitlesi var. En deneyimli sistem yöneticilerinin tercih ettiği araç olarak Citevi. Ve 1986'dan bu yana bu kitap vi'nin rehberi olmuştur.




 


Okumak:



Bütçe ile yerleşimlerin muhasebeleştirilmesi

Bütçe ile yerleşimlerin muhasebeleştirilmesi

Muhasebedeki Hesap 68, hem işletme masraflarına düşülen bütçeye yapılan zorunlu ödemeler hakkında bilgi toplamaya hizmet eder hem de...

Bir tavada süzme peynirden cheesecake - kabarık cheesecake için klasik tarifler 500 g süzme peynirden Cheesecake

Bir tavada süzme peynirden cheesecake - kabarık cheesecake için klasik tarifler 500 g süzme peynirden Cheesecake

Malzemeler: (4 porsiyon) 500 gr. süzme peynir 1/2 su bardağı un 1 yumurta 3 yemek kaşığı. l. şeker 50 gr. kuru üzüm (isteğe bağlı) bir tutam tuz kabartma tozu...

Kuru erikli siyah inci salatası Kuru erikli siyah inci salatası

salata

Günlük diyetlerinde çeşitlilik için çabalayan herkese iyi günler. Monoton yemeklerden sıkıldıysanız ve sizi memnun etmek istiyorsanız...

Domates salçası tarifleri ile Lecho

Domates salçası tarifleri ile Lecho

Kışa hazırlanan Bulgar leçosu gibi domates salçalı çok lezzetli leço. Ailemizde 1 torba biberi bu şekilde işliyoruz (ve yiyoruz!). Ve ben kimi...

besleme resmi RSS