Bu sayfadaki yazılar
Sayfanın metni
Sayfa 26
du. Böylece bilgisayar mimarları da- ha dolaysız bir çözüm geliştirdiler. Donanım çözümü, bir kilit koyan özel bir komuttan yararlanır. Bu tek ko- mut, Dijkstra'nın GİRİŞ protokolün- de sinyal olarak kullanılan değişken- leri inceleyen döngüyle ayni işi görür. LOCK X komutu, bellek adresi X'i iki tabanlı bir değişken olarak ele alır. Eğer X —0 bulursa aynı bellek çevri- minde X'e 1 değerini vererek işleme geçer. X—1 bulursa, komutu daha sonraki bir bellek çevriminde yeniden uygulamaya çalışır. ÇIKIŞ komutu ise sıradan bir CLEAR X'dir. Ancak bu çözümün çok sayıda işlemci üzerinde yaygınlaştırılmasında engel olan sınır- lılıkları vardır. Birçok işlemcinin ay- nı anda programlarının kod kısmını devreye sokmaya çalışıyorsa, bunlar- dan biri dışında hepsi, X — 0'i okuya- na dek “LOCK” komutunu yeniden sınayan bir döngü içine hapsolur. (Seçme devresi, X —-0 olduktan son- ra belleğe yalnızca birinin ulaşmasına fırsat verir.) Sorun, bu döngünün çev- riminin bir bellek erişimi gerektirme-
sinden kaynaklanmaktadır. Bu ise, başka bir işlemcinin aynı bellek ala- nında saklanmış diğer değişkenlere ulaşmasını engeller. Bu da kilit kont- rol döngüsünün görevini yerine getir- meye çalışan her işlemciye karışacağı anlamına gelir. Sistemdeki işlemcile- rin sayısı arttıkça kilit kontroller ar- tar ve sonuçta hiçbir işlemci görevini yerine getiremez olur. Çok işlemcili modern bilgisayar sis- temlerinde aşırı kilit kontrol sorunu- na karşı iki çözüm uygulanmaktadır. 1985'te Dijkstra'nın öne sürdüğü ilk çözüm kilidin yerini semafor adı ve- rilen bir sıralamanın almasıdır. Sema- for kullandığı sırada GİRİŞ protoko- lüne yönelen bir işlemci geçici olarak durdurulur ve adı sıralamaya konur. ÇIKIŞ protokolü, eğer varsa, sıralan- mış işlemcilerden birini serbest bıra- kır. İkinci çözümde, her işlemcinin gizli bölme adı verilen ve ana bellek- teki değerlerin kopyalarını içeren ken- di belleği vardır. Böylece LOCK X ko- mutu gizli bölmesine kilit değişkeni kopya eder ve başka hiçbir işlem-
ciye müdahale etmeden kontrol dön- güsünü sürdürür. CLEAR komutu mesajını ilettiğinde, bu mesajı bekleyen işlemci belleklerinden yalnız- ca biri tarafından alınır. Her iki çö- züm de bağlantı çekişmesini aza indi- rip belleğin makul sayıda işlemci ta- rafından paylaşılmasını sağlar. Aslında kaynakların kendisini kilit- lemek, kaynağa ulaşmaya çalışan ko- du kilitlemekten daha verimlidir. Bu iki işlemcinin kodlarının, farklı kay- nakları kullandıkları sürece, çalışma- ya devam etmesini mümkün kılar. Banka örneğinde, transfer alt-prog- ramında bir kilit kullanmak yerine, A ve B hesapları için ayrı ayri kilitlerin kullanılması daha elverişli olur. Seç- me sorununda yazılıma ilişkin çözüm- lerinin de sonunda, sonraki bellek devrinde hangi işlemcinin belleğe ula- şacağına karar veren donanım seçici- lerine dayanır. Bu nedenle, yazılım seçmesinin güvenirliği seçicinin güve- nirliği ile sınırlıdır.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 27
Sayın Yüksek Baki,
Püre bari
bir basic programın çalışması
Teleteknik İleri,
TO AY Commodore G4 Sahibi malına Bilgisayarımı mü Var ve birazda Bitirmez in n Peide kendülik hata mesajı vermeyip
DH mo nin İçinde bir Bu da ön içihde yeralan A3 komutla kn Basık hangı bellek OH Habina Dili pregramlarımla bu çalşirken bellek adresler
Bir de çoktan bir sarmak oluşmaktadır.
önceden belirlenen bir deyim numarasına gider. Bunun için;
Mon < da Peron “Ao karak Burnu Go veya Bo yapa bir Çek İn * Ama ben la programi madan satir ku b
Bir de, hata mesajları programın çalışması esnasında hata mesajlarının çıkmasını istemiyorum. Bu yerlerine oraları
SYS 679, (deyim numarası)
ava zil bunların kod BASE ile bir nasıl için de kullanabilirsiniz. Hata kodunu ise PEEK 253 ile öğrenebilirsiniz. Diğer bilgisayarlarda bu fonksiyon. Ayrıca Makine Dili YAZIN gibi
Örneklerle aydınlanmış olacağınız - deyim.
ve
Bu işlem yapılırken değişkenler silinmez. Programda GO TO numarası da istenildiğinde değiştirilir.
APIZA
Programın
Kullanılması olmadığından silebilirsiniz veya kendi yazdığınız programınıza eklediğinizde önce bu programı çalıştırıp sonra kendi programınızı çalıştırın.
Aşağıdaki programı yazıp çalıştırın, artık bu programa gereksinim
60881 680002 68883 608006 60018 60820 606838 60848
FOR 679147 READD
POKE N,D NEXT
DATA134,252,96,138,48,13,134,253,165,251,166,252 DATA133,20,134,21,76,163,168,76,116,164,234
Ayrıca aşağıda hata numaralarını veren bir program vardır. Bu programlarla çeşitli hataların numarasını bulabilirsiniz ve kendi programınızda kullanabilirsiniz.
Bu program BREAK vektöründen bağımsız olduğundan, RUN/STOP ile program kesilebilir. RUN/STOP tuşunu etkisiz hale getirmek için POKE 308,225 yapabilirsiniz.
949999 515 506806 HATA ANINDA GOTO NUMARASI 560800 HATA NUMARALARINI GÖSTEREN PROGRAMİ
586818 PRINT" HATA NUMARASI-"/PEEKC(253):REM 253 HATA NUMARASININ SAKLANDIĞI YER
sırasında, programınızda hata varsa
(yalnız başına çalıştırıldığında hata mesajı verir)
yazılmalıdır. Bu komutu program fonksiyon ON ERROR GOTO olarak vardır.
Bu programla, yazdığınız herhangi
Sayın Commodore Dergisi
Yetkilileri, derginizin ilk sayısını televizyon reklamından görüp aldım, çok beğendim ve hemen abone oldum. Ben yaklaşık bir yıldır Commodore sahibiyim. Bu süre içinde birçok sorunum oldu. Bu sorunlarıma çare bulabilecek hiçbir kişi yoktu. Fakat bu Commodore dergisi birçok soruna çare getirebilecek nitelikte. Buna rağmen, benim özel olarak soracağım birkaç konu var. İlk önce şu konuya değinmek istiyorum. Bende birçok isimsiz turbolu oyun var. Bu oyunlar kasette. Copy 190 programı ile kopya edilemiyor. Bu oyunlara isim vermek ya da isimsizken Copy 190 programı ile kopyalamak mümkün mü? İkinci olarak da üçüncü sayıdaki pişti programında 90, 120, 141, 144, 147 no.lu satırlar bir satır numarası altında bilgisayarın izin verdiğinden yani 2 satırdan uzun sürüyor. Bu üçüncü satıra geçen kısmın hepsi siliniyor. Bu durumda da programın işlemeyeceğini sanıyorum. Ya da bilginin fazla olmamasından ötürü bir çözüm bulamıyorum. Bu konularda beni en kısa zamanda aydınlatırsanız çok memnun olurum.
GÜRAY AYSEL
Sayın Güray Aysel, Copy 110 sadece ok Turbo denilen turbo programlar için kullanılabilir. Bunun dışındaki programlar için dergide yayınlanan kopyalama programlarını ve program kopyacısına notları okumanızı öneririz. Rom piano ve pişti programları birçok kişi tarafından başarıyla çalıştırıldı. Büyük bir olasılıkla yazım hatası yaptınız. Programı gözden geçiriniz.