Bu sayfadaki yazılar
Sayfanın metni
Sayfa 8
Bir dergide tekrar birlikte olmak ne güzel. Bundan önceki bölümümüzü Commodore Dergisi'nin AMIGA Bülteni'nde vermiştik. Artık bu bölümler bu dergide yayınlanmaya devam edecek. Lafı fazla uzatmadan hemen konuya girmek istiyorum. AMIGA, hepinizin bildiği gibi birçok üstün özelliğe sahip bir bilgisayar, ancak bunlar sadece grafik, ses, animasyon gibi alanlarda değil. En az bunlar kadar önemli olan ve ne yazık ki diğerleri kadar hatırlanmayan bir unsur da onun işletim sistemi. Bu kavramı bilmeyenler için kısa bir açıklama yapmak gerekirse, “İşletim sistemi (Operating System, OS) bir bilgisayarın en ince ayrıntılarına kumanda eden programlar grubudur” diyebiliriz. Bu programlar, bilgisayarın yaptığı temel işlemleri uygular. Örneğin bir program diskete bir bilgi yazmak isterse işletim sisteminden bunu nasıl yapılacağını bilen bir alt programı çağırır, bu bilgileri ona iletir ve gerisine kendi karışmaz. Bu alt program, bilginin diskete mi, harddiske mi, RAMdiske mi yazılacağına bakarak o tür kayıt ortamı için gereken daha düşük seviye alt programları çağırır. Bu biraz dolambaçlı bir yol gibi görülebilir, ancak böylece programlar belli bir kayıt ortamına (örneğin diskete) bağlı kalmazlar, başka ortamlara (örneğin harddiske) kolayca uyum sağlarlar. Ne yazık ki bazı programlar (daha çok oyunlar) bunu pek dikkate almazlar, bazı programcılar doğrudan diskete erişerek kazanılacak küçük zaman kazançlarının peşinde koşarak uyumluluktan vazgeçerler. Oyun programlarında anlayışla karşılanabilecek bu davranış, diğer yazılım türleri için son derece yanlıştır, ama zaten boyutları devamlı büyüyen grafik, müzik, animasyon programları disketlere sığmayıp harddisk (hatta CD-ROM) gibi kayıt ortamlarına gerek duymaya başlayınca bu tür sorunlar azalmaya başladı. İşletim sistemi aslında oldukça kapsamlı. ROM'da bulunan Kickstart adlı kısım, 1.3 versiyonuna kadar 256K uzunluğunda, 3000'de yer alan Kickstart 2.0 ise tam 512K tutuyor. Bunun dışında bilgisayarın açıldığı (boot edildiği) disketten gerektiğinde yüklenen pek çok kısım var. Bu özelliği yüzünden AMIGA son derece esnek bir işletim sistemine sahip, herhangi bir ilave yapılacağı zaman bunu açılış disketine yerleştirmek ve bir iki yere bunların tanınması için gereken ilaveleri yapmak yetiyor, ancak bu aynı zamanda bir dezavantaj, çünkü AMIGA bu cins bir bilgiye ihtiyacı olursa sizden açıldığı disketi istiyor. Bunun çaresi, bilgisayarın harddiskten açılması ve aradığı dosyaları burada bulabilmesidir. Zamanımızda harddisk artık bir lüks değil, ama tabii ki AMIGA'sı ile sadece oyun oynayan birisine harddisk gerekmez. Yine de ciddi bir işle uğraşırken (animasyon, programcılık, müzik, grafik gibi) harddisk yalnız gerekli değil, neredeyse mecburidir. Ayrıca günümüzde pek çok kaliteli ve fazla disketli oyun da harddisk kullanımını desteklemektedir. Bunlara birkaç örnek vermek gerekirse Pirates, TestDrive, SilentService, StarControl, Wings, 688 Attack Sub, Falcon, Elvira, LucasFilm'in oyunları (Secret of Monkey Island...), Sierra-On-Line'ın oyunları (Iceman, King's Quest, Larry...) bunların başında gelir. Neyse, konuyu fazla dağıtmayalım. İşletim sisteminin kısımlarına geçmeden bazı temel kavramları açıklamak istiyorum: Multitasking (Çok görevlilik): Birden fazla programın aynı anda çalışması. AMIGA'nın içinde sadece bir merkezi işlemci (CPU) olduğu için aslında birçok programın aynı anda çalışması imkansızdır. Ancak AMIGA her programı belli bir süre çalıştırıp sonra diğer programlara birer birer zaman ayırarak görünüşte bunu sağlar. Bilgisayarın yüksek hızı yüzünden insan bunu ayırt edemez. Resident library (kalıcı kütüphane): Bu tür library'ler her dilde yazılmış programların kullanabileceği yararlı fonksiyonlar (alt programlar) içerirler ve işletim sistemini kullanmanın temel yolu bu alt programları kullanmaktır. İlk olarak tüm sistemi üç ana kısma ayırmak mümkün. Bunlar: 1- Multitasking imkanlarını düzenleyen EXEC. 2- Disket ve diğer kayıt ortamlarını düzenleyen AMIGA-DOS. 3- Grafik tabanlı kullanıcı arabirimi (Graphical User Interface) işlevi gören INTUITION.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 9
1- EXEC: (yani Executive Kernel), multitasking sırasında programlar arasındaki geçişin sorunsuz olmasını sağlar, ayrıca tüm işletim sistemi ile ilgili ama otomatik olarak halledilmesi gereken, normal programları fazla ilgilendirmeyen birçok işi halleder. Genel olarak tüm sistemin en alt seviye (low-level) kısmı kabul edilir. Programcılar açısından EXEC, ROM'da yer alan 'exec.library' adlı bir 'resident library' (kalıcı kütüphane)'dir. Buradaki fonksiyonların hepsi sıradan bir programda gerekli olmaz, ancak aralarında çok sık kullanılanları da vardır (resident library kullanımına daha sonra ayrıntıları ile değineceğim).
2- AMIGADOS: DOS, Disk Operating System'in kısaltılmışıdır ve disket, harddisk, RAMdisk, seri ve paralel portlar gibi bilgisayarın dış dünya ile ilişki kurmasını sağlayan programlar grubuna verilen isimdir. Yine ROM'da bulunan 'dos.library' bu sistemin temel direğidir, ancak AMIGADOS başka bileşenleri de içerir. Bunlar 'handler' ve 'device'lardır. Örneğin siz bir programcı olarak disketten bir dosya yüklemek istiyorsunuz. Programınız C, Assembler, Pascal, Modula hatta BASIC'te bile yazılmış olabilir. Önce 'dos.library'-yi açarsınız, oradaki Open() fonksiyonu ile dosya açma isteğinizi AMIGADOS'a bildirirsiniz, sizin okumak istediğiniz yere göre (disket mi, harddisk mi ne ise) belli bir 'handler'i çalıştırır. O handler ise gerekiyorsa bir 'device'ı kullanarak gereken bilgiyi okur. Bu arada örneğin bilginin disketin üstünde nerede olduğunu (disketlerde bilgiler karmaşık bir sıra ile tutulur) sizin bilmeniz gerekmez, sizi bu angaryadan kurtarmak o drive'a bakan device'ın işidir. Size sadece okumak istediğiniz dosyanın diskteki ismini vermek kalır.
3- INTUITION: Ekranınızda gördüğünüz 'screen' (ekran), 'window' (pencere), menü, 'requester' (dialog penceresi) gibi görüntüler, mouse ile basılan veya çekilen düğme ve butonlar (gadget), Workbench ekranındaki icon'lar ve benzerleri hep 'intuition.library' adlı resident library ve ona bağlı işletim sistemi elemanları tarafından kullanıcının bilgisayarına kumanda etmesini kolaylaştırmak için sağlanan özelliklerdir. 'Intuition', 'layers.library'nin de yardımlarıyla bu imkanları sunar. İşletim sistemini kullanmak demek, temelde bu resident library'leri kullanmak anlamına geliyor. Ayrıca 'device' ve 'handler'ları da kullanmak mümkün, ancak library'ler daha kolay olduğu için genelde tercih ediliyor. Bu yüzden gelecek sefer bu konuya daha fazla eğileceğiz.