Çalıştığı donanımın yapısı bir tara- fa bırakılırsa, bir işletim sisteminin ta- sarımını etkileyenler arasında sisteme getirilen iş yükünün çeşidi, sistemi ku- ran ve bakımını sürdüren kişilerin dü- zeyi, uygulama amacıyla sistemi kul- lanan kişilerin niteliği sayılabilir. Ge- nelde, bir-işletim sistemin temel fonk- siyonları şunlardır 1. Kullanılacak f'ızıksei araçlara gü- re, çalışılması daha uygun olan man- tıksal araçlar kullanarak soyut bir ma- kine tasarlamak. 2. Paylaşılan bir çevrenin doğruluk ve tutarlılığını sağlamak üzere bu çev- redeki mantıksal ve fiziksel araçların kullanımını kontrol etmek. 3. Bilgisayarın olanaklarını (araçla- - rını), bu araçların kullanım yoğunlu- ğuna ve kullanıcıya cevap ölçüsüne bağlı olarak ayıracak kararları yorum- lamak ve uygulamak; kullanıcılar ara- sında araçların paylaşım çekişmesini çözmek. Kuşkusuz bu kadar geniş bir fonk- siyonlar öbeği; özel fonksiyonların mevcudiyetine, özel bir fonksiyon için sağlanan desteğin düzeyine ve fonk- siyonların birbirleriyle bağıntı biçim- lerine bağlı olarak hayli çeşitlilik ge- tirir. Büyük makinelerin olanaklarını verimli yönetmek üzere çok çeşitli or- ganizasyon tipleri vardır. Ek olarak bunlar tek kullanıcılı küçük sistemle- re program geliştirme araçları sağla- yan işletim sistemlerinin kullanıcısına da hizmet sunabilirler. İŞLETİM —— £ SİSTEMLERİNİN ÇEŞİTLERİ İşletim sistemlerini sınıflamaya te- mel olarak resmi bir sınıflandırma şe- ması gerçekte yoktur. Sınıflamada da- ha çok, kullanıcıya sunulan arabirim- lerin yapısı ve sağlanan fonksiyonun genelliği gibi birbiriyle kesişen, yer yer örtüşen ölçütler kullanılmaktadır. Kullanım ve donanım tiplerindeki ye- nilikler işletim sistemi tiplerinin sayı- sını da sürekli değiştirmektedir. Bu- gün mevcut sistemler anahatlarıyla aşağıdaki tiplere ayrılabilir. —— Genel Amaçlı Büyük İşletim Sistemleri: Bu sınıftaki sistemler esas olarak büyük makineler içindir. Farklı kul- lanım çeşitlerinden oluşan bir çevre- ye sahip makinenin çok sayıdaki ara- cını yönetmeye yöneliktirler. İşletim sistemi burada on-line ya da batch (deste) durumunda çalıştırılan uygu- lama programlarına hizmet verebile- ceği gibi, sırasında uygulama prog- ramlarını destekleyici bir ortam oluş- turan bir alt-sisteme de destek sağla- yabilir. Çağdaş bir büyük işletim sis- teminin hizmet sunabileceği alt-sis- temler veri tabanı yönetimi, program geliştirme, hatta kişisel bilgisayar sis- temlerini kapsar. Bu tür büyük işle- tim sistemleri arasında IBM'in MVS'si, UNIVAC'ın OS 1100'ü, Ho- neywell'in HECOS ve MULTLICS'i sa- yılabilir. Gerçek Zamanlı İşletim Sistemleri Sıkı zaman kısıtları içinde çalıştırıl- ması gereken tek bir uygulamanın bu- lunduğu bir çevre için, genel amaçlı büyük işletim sistemleri çoğu durum- da uygun değildir. Bunlarla kıyaslan- dıklarında gerçek zamanlı işletim sis- temleri daha az fonksiyona ve farklı bir yapıya sahiptir. Sundukları tek hizmet, izleme altındaki bir olay gru- buna bilgisayarın belirli periyotlar içinde ve en kısa sürede cevap verme- sidir. Örneğin füzelerin konumunu iz- lemekte kullanılan sistem, klasik bir gerçek zamanlı işletim sistemidir. Gerçek zamanlı işletim sistemleri ki- mi zaman, destekleyecekleri uygula- ma için özel olarak yazılır. Bu durum- da yalnızca uygulama için gerekli © fonksiyonları kapsarlar ve donanımın verimli kullanımını izlemek daha az zahmetlidir. Cevap süresi öylesine önem taşır ki, fonksiyonların zama- nında yürütülmesini sağlamak için makinenin verimliliğinden fedakarlık edilebilir. Genelleştirilmiş gerçek zamanlı iş- letim sisteminin en eski örneği UNI- VAC 490 için yazılan Ömega sistemi- dir. Diğer sistemler arasında IBM'in Havaalanı Kontrol Programı (şimdi havacılık endüstrisinin yanısıra ban- kacılıkta da kullanılıyor), Data Gene- ral'in RDOS'u ve Digital Eguipment'- ın PDP-İ'i için geliştirilen çeşitli işle- tim sistemleri sayılabilir. Gerçek zamanlı işletim sistemlerin- de kullanılan tasarım yaklaşımı, “mini” ve “mikro” bilgisayarların iş- letim sistemlerini tasarlamada da sık commodore sık kullanılmaktadır. Fonksiyonun ve genel masrafların en aza indirilmesi kimi zaman on-line sistemi bulunan diğer ortamlarda da uygun olmakta- dır. Bu durum özellikle, uygulama ge- liştiren uzman programcıların, daha küçük bir makine kullanırken uygu- lamalarına temel olacak bir ana işle- tim sistemi gereksindiği yerlerde geçer- lidir. Intel'in RMX-80'i bu tür mik- roişlemcili işletim sistemlerine örnek olarak verilebilir. —— Tek Kullanıcılı İşletim Sistemleri Bilgisayarların maliyeti, kişisel kul- lanımı mümkün kılacak ölçüde düş- müştür. Böyle sistemler, maksimum kullanım kolaylığı sağlamaları ve mi- nimum mesleki destek gerektirmeleri amacıyla yapılır. Bu tür ortamlarda, verimli kullanıma ilişkin işletim siste- mi fonksiyonları tümüyle ortadan kalkma eğilimindedir. Hatta kullanı- cı, böyle nitelikler taşıyan bir işletim sistemiyle karşı karşıya bulunduğunu farketmeyebilir bile. Kişisel bilgisayar sistemleri kullanıcıya, veri ve program yalama ve üzerinde değışıklık yapma ya da sınıflama gibi bir dizi temel veri- işleme fonksiyonu sağlamaktadır. Bu işletim sisteminin özellikleri kurulma- larını kolaylaştırır, üstelik kullanılma- ları mesleki hazırlık da gerektirmez. ——— Program Geliştirme Sistemleri Genel amaçlı sistemler, hem prog- ram geliştirme hem de üretmeye yö- nelik, gerçek zamanlı sistemler ise ne- redeyse yalnız üretmeye yönelik hiz- metlerle donatılmıştır. Bunların dışın- da, esas olarak kişisel bilgisayarlarda geliştirilen programlardan daha zen- gin ve karmaşık programlar geliştir- meyi destekleyen bir tür de bulunmak- tadır. Program geliştirme araçları, tümü “yüksek düzeyli program dilleriyle der- leyici hizmetlerini, program modül yönetimi, düzenleme, deneme, hata bulma (debug) işlemlerini kapsar. Yu- karıda sözedildiği gibi, programlama sistemleri genel amaçlı büyük işletim sistemlerinin alt-birimleri olabilir; ay- rıca, programlama fonksiyonuna tah- sis edilecek makineler için kendi ba-