Filed Under (Bilgisayar-Internet) by murnes on 03-03-2008

Sistem çağrı düzeneğinin, işletim sistemince verilen hizmetlerin, donanımın ayrıntısından soyutlanmış, kolay anlaşılır mantıksal modellere dayalı olarak yürütülebilmesini sağlayan bir düzenek olduğu önceki bölümde belirtilmişti. Bu bağlamda, sistem çağrı düzeneği, uygulama programlarının işletim sisteminden hizmet almak için kullandıkları bir düzenek olarak da düşünülebilir. Ancak sistem çağrı düzeneği kavramını, uygulama programı-işletim sistemi arası hizmet alış-verişi ile sınırlı düşünmek doğru olmaz. Tek parça (monolithic) olarak ele alınması mümkün olmayan yazılımlar, çoğu kez katmanlı yapıda tasarlanırlar. Bu bağlamda her katman, yazılımın üreteceği hizmetin bir alt adımını gerçekleştirmek için öngörülür

Katmanlar, yazılımın genel yapısı içinde hiyerarşik bir sırada yer alırlar. Her katman, bir üst katmana hizmet üretirken bir alt katmandan hizmet alır. Bu yapı çerçevesinde her katman belirli bir soyutlama düzeyini temsil eder ve bir üstünde yer alan katmana, hizmeti, bu soyutlama düzeyine uygun olarak üretir. Bu yolla her alt adıma ilişkin ayrıntı ilgili katmana gömülü kalır. Katmanlar arası hizmet alış-verişi sistem çağrı düzeneğine dayalı olarak yürütülür. Katmanlı yapıda gerçekleştirilmiş işletim sistemleri de bu genel yapıya uyarlar. Başka bir deyişle,

Uygulama programı-işletim sistemi arası hizmet alış-verişinin yanı sıra, ara katmanlar ile çekirdek katman arasında da hizmet alış-verişi sistem çağrı düzeneğine dayalı olarak yürütülür.

Örneğin, bir uygulama programı, simgesel kimliğiyle andığı bir kütüğün başına göreli belirli sayıda baytı okumak ya da yazmak istediğinde bu istemine karşı gelen hizmeti, bir sistem çağrısıyla kütük yönetim sisteminden talep eder. Kütük yönetim sistemi de, örneğin, ilgili kütüğün yer aldığı fiziksel sürücü kimliğini ve okunacak ya da yazılacak bayt dizisinin yer aldığı fiziksel öbek adresini, silindir-kafa-sektör üçlüsü olarak hesaplayıp (başka bir deyişle mantıksal yapı ile fiziksel yapıyı eşleyip) bu üçlüye karşı gelen sektörlerin okunup sözkonusu uygulama programının adres evreni içinde tanımlı ana bellek alanına aktarılmasını, fiziksel giriş-çıkış işlemlerini yürütmekle sorumlu çekirdek katmandan ister. Bu nedenle, katmanlı mimariye sahip işletim sistemlerinde değişik katmanlar için değişik sistem çağrı grupları bulunur. Örneğin UNIX’te sistem çağrıları, işletim sistemi C programlama dili kullanılarak yazıldığından C işlevleri olarak tanımlanırlar ve sözkonusu işlevlerin ait oldukları grup numaralarından söz edilir. Kimi gruplara ilişkin işlev ya da sistem çağrıları uygulama programlarınca, bir bütün olarak işletim sisteminden hizmet almak için kullanılabilirken kimileri de, salt işletim sistemi alt katmanlarınca, çekirdek katmandan hizmet almak üzere öngörülürler. MS-DOS’ta ise int 21h, uygulama programlarının kütük yönetim sisteminden hizmet almak için kullandıkları bir düzenektir. Ancak int 21h düzeneğinin yanı sıra, int 1Ah, int 1Bh gibi, daha çok, kütük yönetim sisteminin çekirdek katmandan hizmet alması amacıyla öngörülmüş başka sistem çağrıları da bulunur



Post a comment

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Name: 
Email: 
URL: 
Comments: