RSTS/E - RSTS/E
geliştirici | Digital Equipment Corporation , daha sonra Mentec |
---|---|
Yazılmış | MACRO-11 montaj dili, BASIC-PLUS -2, DCL , Forth |
çalışma durumu | Geliştirme yok, hala mevcut |
Kaynak modeli | Kapalı kaynak |
İlk sürüm | 1970 |
En son sürüm | RSTS V10.1 / 1992 |
Uygun | İngilizce |
Güncelleme yöntemi | İkili yamalar, tam ikili dosyalar |
Paketleme yöneticisi | DESTEK OLMAK |
Platformlar | PDP-11 |
çekirdek türü | Zaman paylaşımlı işletim sistemleri |
Varsayılan kullanıcı arayüzü |
Komut satırı arayüzü : DCL (Dijital Komut Dili) |
Lisans | tescilli |
Öncesinde | TSS/8 |
RSTS ( / r ɪ s t ɪ s / ) bir olduğunu çok kullanıcılı zaman paylaşımı işletim sistemi başlangıçta tarafından geliştirilen, Evans Griffiths ve Hart Boston ve edindiği Digital Equipment Corporation (şimdi parçası DEC, Hewlett Packard için) 16 bitlik mini bilgisayarların PDP-11 serisi . RSTS'nin ilk sürümü (RSTS-11, Sürüm 1 ) 1970 yılında PDP-8 için TSS-8 zaman paylaşımlı işletim sistemini geliştiren DEC yazılım mühendisleri tarafından uygulandı . RSTS'nin son sürümü (RSTS/E, Sürüm 10.1 ) Eylül 1992'de yayınlandı. RSTS-11 ve RSTS/E genellikle "RSTS" olarak anılır ve bu makale genellikle daha kısa biçimi kullanır.
Kısaltmalar ve kısaltmalar
- BTSS (Temel Zaman Paylaşım Sistemi – asla pazarlanmaz) – RSTS'nin ilk adı.
- CCL ( Özlü Komut Dili ) – Komut Satırı Yorumlayıcısında tutulan bir programı çalıştırma komutuna eşdeğerdir .
- CIL (Çekirdek Görüntü Kitaplığı) - Bir benzer paylaşılan kitaplığın üzerine (bu nedenle) Linux veya .dll üzerinde Microsoft Windows .
- CILUS (Çekirdek Görüntü Kitaplığı Güncelleme ve Kaydetme) – Bir CIL dosyasını işlemek için program.
- CLI (Komut Satırı Yorumlayıcısı) – Bkz. Komut satırı arayüzü .
- Dişçikler gibi Sistem yönetim uygulamaları - (Yaygın Sistem Programları Kullanılan) Görev Yöneticisi veya Kayıt Defteri üzerinde Microsoft Windows . RSTS-11'de CUSP'ler tıpkı kullanıcı programları gibi BASIC-Plus ile yazılmıştır.
- DCL (Dijital Komut Dili) – DİJİTAL Komut Dili bölümüne bakın .
- DTR (DATATRIEVE) – programlama dili
- FIP (Dosya Bilgi İşleme) – dosya isteklerini yayınlamak için yerleşik alan
- FIRQB (File Information Request Queue Block) – Dosya istekleri hakkında bilgi içeren bir veri yapısı.
- KBM (Klavye Monitörü) – Komut Satırı Yorumlayıcısına benzer.
- LAT (Yerel Alan Aktarımı) – Digital'in TCP/IP'ye öncülü
- MFD (Ana Dosya Dizini) – Dosya sisteminin kök dizini.
- PBS (Toplu Yazdırma Hizmetleri)
- PIP ( Periferik Değişim Programı )
- PPN (Proje Programcı Numarası) – Unix'teki GID ve UID'ye benzer .
- RDC (Uzaktan Tanılama Konsolu) – CPU'yu kontrol etmek için ışıklar ve geçiş anahtarları yerine konsol terminaline veya bir modeme seri bağlantı kullanan bir PDP-11 için yedek ön panel.
- RSTS-11 (Kaynak Paylaşım Zaman Paylaşım Sistemi) – RSTS için ilk ticari ürün adı
- RSTS/E (Genişletilmiş Kaynak Paylaşımı Zaman Paylaşım Sistemi) – RSTS'nin mevcut uygulaması.
- RTS (Çalışma Zamanı Sistemi) – Bir kullanıcı programının işletim sistemiyle arabirim oluşturmak için kullanacağı 32K, 16 bitlik sözcük adres alanının üst sınırına eşlenecek olan, tedarikçi tarafından sağlanan salt okunur kod segmenti. Bir RTS'nin yalnızca bir kopyası RAM'e yüklenecek, ancak bunu gerektiren herhangi bir kullanıcı programının adres alanına eşlenecektir. Özünde, paylaşılan, yeniden giriş kodu, RAM gereksinimlerini azaltmak için, kodu gerekli olan herhangi bir program arasında paylaşarak.
- RTSS (Kaynak Zaman Paylaşım Sistemi – asla pazarlanmaz) – RSTS'nin ikinci adı
- SATT (Depolama Tahsisi Doğruluk Tablosu) her diskte, tüm diskteki bloğun veya kümenin diskte tahsis edilip edilmediğini gösteren bir dizi 512 KB bloktur. Bit düzeyinde, 1, bir kümenin kullanımda olduğunu gösterir; 0, kullanımda olmadığını gösterir.
- SIL (Görüntü Kitaplığını Kaydet) – DEC , PDP-11T55 gibi tüm Yarı İletken bellekli ve Manyetik çekirdekli belleksiz PDP-11 sistemleri satmaya başladıktan sonra bir CIL dosyasının yeni adı .
- SILUS (Görüntü Kitaplığı Güncellemesini Kaydet ve Kaydet) – CIL dosyalarının SIL dosyaları olarak yeniden adlandırılmasından sonra CILUS'un yeni adı.
- UFD (Kullanıcı Dosya Dizini) – Bir kullanıcının ana dizini. Bir dosya sisteminin kök dizini.
- XRB (Aktarım İstek Bloğu) - Bilgileri iletmek için FIRQB'leri kullanmayan diğer sistem istekleri türleri hakkında bilgi içeren bir veri yapısı
Gelişim
1970'ler
Çekirdek RSTS arasında edildi programlanmış içinde montaj dili MAKRO-11 , derlenmiş ve yüklü bir karşı diske kullanarak CILUS programını bir çalışan, DOS 11 işletim sistemi. RSTS açılırken uzun bir sürümüne TEMEL Aralık "denilen programlama dili BASIC-PLUS ". Kaynak muhasebesi, oturum açma , oturum kapatma ve sistemi yönetme programları da dahil olmak üzere işletim sistemi için tüm sistem yazılımı CUSPS , BASIC- PLUS'ta yazılmıştır. 1970'ten 1973'e, RSTS sadece ran 56K bayt arasında manyetik çekirdek bellek dahil (64 kilobayt bellek eşlemeli I / O alanı). Bu, bir sistemin maksimum 17 iş ile 16'ya kadar terminale sahip olmasına izin verir . Maksimum program boyutu 16K bayttı. 1973 Aralık sonunda, RSTS çalıştıran 150 lisanslı sistem olduğu tahmin ediliyordu.
1973'te bellek yönetimi desteği, daha yeni DEC PDP-11/40 ve PDP-11/45 mini bilgisayarları için RSTS'ye (şimdi RSTS/E) dahil edildi ( PDP-11/20 yalnızca RSTS-11 altında desteklendi). Yeni PDP-11 bilgisayarlarda bellek yönetiminin tanıtılması, bu makinelerin yalnızca dört kat daha fazla bellek (18-bit adresleme, 256K bayt) adresleyebildiği anlamına gelmekle kalmadı, aynı zamanda geliştiricilerin kullanıcı modu işlemlerini ayırmasının yolunu da açtı. çekirdeğin çekirdeğinden.
1975'te, daha yeni 22-bit adreslenebilir PDP-11/70 için bellek yönetimi desteği yeniden güncellendi . RSTS sistemleri artık 63 işe kadar çalışan iki megabayta kadar bellek kullanacak şekilde genişletilebilir . RTS ve CCL onlar "sırasında derlenmiş gerekiyordu rağmen kavramlar tanıtıldı sysgen ". Tek bir işin birden fazla terminali (toplam 128) kontrol etme becerisine izin verecek çoklu terminal hizmeti tanıtıldı. Büyük mesaj gönderme/alma ve süreçler arası iletişim çok karmaşık ve verimli hale geldi. Ağustos ayına kadar 1.200 lisanslı sistem var.
1977'de RSTS için kurulum süreci artık DOS-11'e bağlı değildi. RSTS çekirdek şimdi altında derlenmiş olabilir RT-11 RTS RT-11 ile bir çekirdek dosyası olarak biçimlendirilmiş, Silus ve kopyalanan iken, sistem veya diğer disklere bilgisayar zaman paylaşımlı oldu. TEMEL-PLUS RTS (aynı zamanda, RT-11, RSX-11 , TECO ve üçüncü parti RTS ler) RSTS bağımsız kullanım modu işlemleri gibi bütün ran çekirdek. Bir sistem yöneticisi artık önyükleme aşamasında hangi RTS'nin sistem varsayılan KBM'si olarak çalıştırılacağına karar verebilir . Şimdiye kadar, yaklaşık 3.100 lisanslı sistem vardı.
1978'de, 22 bit adreslemeyi destekleyebilen tüm makineler için son bellek yönetimi güncellemesi dahil edildi. RSTS artık bir PDP-11 (4 megabayt) için kullanılabilen maksimum bellek miktarını kullanabilir. RSTS'yi bu yeteneğe sahip ilk DEC işletim sistemi yapan SUPERVISORY modu için de destek eklendi. DECnet ayrıca saha servis teknisyenleri uzak teşhis yanı sıra desteklenmiştir RDC içinde Colorado Springs, Colorado (DEC abonelik servisi). Sonunda on yıl üzerinde 5.000 lisanslı sistemler vardır.
1980'ler
1981'de Unibus makineleri ( PDP-11/44 , PDP-11/45, PDP-11/55 ve PDP-11/70) olan kullanıcılar için ayrı talimat ve veri alanı desteği , bireysel bir programın bellek kısıtlamalarına bir uzantı sağladı. . Programları ayrı talimat ve veri alanı kullanacak şekilde derlemek, kısa bir süre sonra bir programa talimatlar için 64 kB'a ve verileri arabelleğe almak için 64 kB'ye kadar verecektir. DCL RTS da DECnet III hali için destek olarak dahil edilir.
1983'e gelindiğinde, RSTS/E çalıştıran tahmini 15.000 DEC makinesiyle V8.0-06, DEC tarafından satılan en küçük 18-bit PDP-11 ( MicroPDP-11 ) için destek içeriyordu . MicroPDP-11'e kurulumu kolaylaştırmak için bu dağıtıma önceden oluşturulmuş bir çekirdek ve CUSPS dahil edildi. DEC, MicroPDP-11'de önceden oluşturulmuş sürümü MicroRSTS olarak indirimli bir fiyata sattı, ancak kullanıcıların kendi çekirdeğini oluşturmaları gerekiyorsa tam sürümü satın almaları gerekiyordu. Dosya sistemi yükseltildi ve RSTS Dizin Yapısı 1 (RDS1) adı verildi. RSTS dosya sisteminin önceki tüm sürümlerine RDS0 adı verilir. Daha yeni dosya sistemi, 1700'den fazla kullanıcı hesabını destekleyecek şekilde tasarlanmıştır. "Şimdi 10.000'den fazla lisanslı kullanıcı ve en azından eşit sayıda lisanssız kullanıcı olduğu düşünülüyor!".
1985'ten 1989'a kadar RSTS, Sürüm 9 revizyonlarında olgun bir ürün haline geldi . DCL , birincil RTS olarak kuruldu ve yeni kullanıcı hesabı özelliklerini desteklemek için dosya sistemi yeniden yükseltildi (şimdi RDS1.2). Parolalar artık DEC Radix-50 biçiminde saklanan altı (6) karakterle sınırlı olmak yerine değiştirilmiş bir DES algoritması kullanılarak şifrelendi . Sürüm 9'dan önce, proje (grup) sıfırında kullanıcı olmayan bir sistem hesabı vardı (tanım [0,1]'dir) ve proje numarası 1'deki tüm hesaplar ayrıcalıklıydı ( Unix sistemlerindeki kök hesaptan farklı olarak ). Sürüm 9 yayınlandıktan sonra, sıfır projesi için ek hesaplar oluşturulabilir ve herhangi bir hesap için ayrı ayrı birden fazla ayrıcalık ayarlanabilir. LAT protokolü desteği ve DECnet IV'ün en yeni sürümünü çalıştırma yeteneği dahil edildi. Bu ağ geliştirmeleri, bir DEC sunucusu aracılığıyla bir terminale bağlanan herhangi bir kullanıcıya , bir VAX çalıştıran VMS ile olduğu kadar kolay bir şekilde bir RSTS makinesiyle iletişim kurma yeteneği verdi . DCL Aralık işletim sistemleri arasında komuta yapısı da tanıdık bir görünüm ve his katkıda bulunmuşlardır:
"Bu sadece başka bir sözde komut dosyası işlemcisi değil; VMS özelliklerine dayanmaktadır. DCL komut dosyası işlemcisi, DCL ve monitörde yapılan kapsamlı değişikliklerle RSTS'ye tam olarak desteklenir ve entegre edilir. DCL, işinizin bir parçası olarak komut dosyalarını yürütür; bu nedenle , sözde klavye veya klavyenize komut zorlaması gerekmez (ATPK'de olduğu gibi)."
1990'lar
1994 yılında DEC, PDP-11 yazılım işinin çoğunu Mentec'e sattı. Digital, Mentec personelinin yardımıyla kısa bir süre sonra da kendi PDP-11 müşterilerini desteklemeye devam etti.
1997'de Digital ve Mentec, RSTS 9.6 veya daha eskisini ticari olmayan, hobi amaçlı kullanmak isteyen herkese ücretsiz bir lisans verdi. Lisans yalnızca SIMH PDP-11 emülatöründe geçerlidir. Lisans ayrıca bazı diğer Dijital işletim sistemlerini de kapsar. Lisansın kopyaları, SIMH öykünücüsünün resmi web sitesinden indirilebilen yetkili yazılım setine dahildir .
belgeler
Bir RSTS dağıtımına eşlik eden dokümantasyon kılavuzlarının standart tamamlayıcısı, en az 11 büyük üç halkalı ciltleyiciden (topluca "turuncu duvar" olarak bilinir), RSTS/E Hızlı Başvuru Kılavuzu'nu içeren bir küçük üç halkalı ciltleyiciden ve bir ciltsiz kopyadan oluşur. arasında TEMEL AA 0155B-TK Introduction to . 11 üç halkalı bağlayıcının her biri şunları içerir:
Cilt 1: Genel Bilgiler ve Kurulum
- Dokümantasyon Dizini
- Sürüm notları
- Bakım Defteri
- Sistem Kurulum ve Güncelleme Kılavuzu
Cilt 2: Sistem Yönetimi
- Sistem Yöneticisi Kılavuzu
Cilt 3: Sistem Kullanımı
- Sistem Kullanıcı Kılavuzu
- Komut Prosedürlerini Yazma Kılavuzu
4. Cilt: Yardımcı Programlar
- Yardımcı Programlar Referans Kılavuzu
- EDT Editörüne Giriş
- SIRALA/BİRLEŞTİR Kullanıcı Kılavuzu
- RUNOFF Kullanıcı Kılavuzu
Cilt 4A: Yardımcı Programlar
- EDT Editör Kılavuzu
Cilt 4B: Yardımcı Programlar
- Görev Oluşturucu Başvuru Kılavuzu
- Programcının Yardımcı Programlar Kılavuzu
- RT11 Yardımcı Programlar Kılavuzu
- TECO Kullanıcı Kılavuzu
Cilt 5: BASIC-PLUS
- BASIC-PLUS Dil Kılavuzu
Cilt 6: Sistem Programlama
- Programlama Kılavuzu
Cilt 7: MAKRO Programlama
- Sistem Yönergeleri Kılavuzu
- ODT Referans Kılavuzu
Cilt 7A: MAKRO Programlama
- MACRO-11 Dil Kılavuzu
- RMS-11 MAKRO Programcı Kılavuzu
Cilt 8: RMS
- RMS-11: Bir Giriş
- RMS11 Kullanıcı Kılavuzu
- RMS-11 Yardımcı Programlar
Operasyon
İletişim
RSTS , operatörle etkileşim kurmak için bir seri iletişim bağlantısı kullanır . Bağlantı, 20 mA akım döngüsü arabirimine sahip yerel bir bilgisayar terminali , bir RS-232 arabirimi (yerel seri bağlantı noktası veya modem aracılığıyla uzak bağlantı ) veya DECnet veya LAT kullanan bir ethernet bağlantısı olabilir. 128 adede kadar terminal (çoklu terminal hizmeti kullanarak) bir RSTS sistemine bağlanabilir ve maksimum 63 iş altında çalışabilir ( kullanılan işlemciye , bellek ve disk alanı miktarına ve sistem yüküne bağlı olarak). Çoğu RSTS sisteminin bu kadar çok terminalin yakınında hiçbir yeri yoktu. Kullanıcılar ayrıca toplu modda çalıştırılmak üzere işleri gönderebilir . İzin kullanıcıların toplu komutlara benzer yarı etkileşimli modda hayali terminali (uçbirimsiler) üzerinde bir dizi komut çalıştırmak için "ATPK" adı verilen bir toplu programı vardı MS-DOS .
Giriş Yap [Proje, Programcı]
Kullanıcılar , oturumu kapatılmış bir terminalde LOGIN komutunu (veya HELLO) yazıp geri tuşuna basarak sisteme bağlanır . Aslında, oturumu kapatılmış bir terminalde herhangi bir komut yazmak, daha sonra komutu yorumlayan LOGIN programını başlattı. Henüz oturum açmamış bir kullanıcı tarafından kullanılmasına izin verilen komutlardan biriyse ("Oturum Kapatıldı"), bu komut için ilişkili program ZİNCİRLENMİŞTİR, aksi takdirde "Lütfen HELLO deyin" mesajı yazdırılır. terminalde. Sürüm 9'dan önce, bir kullanıcı 1 satırlık bir oturum açma işlemi de başlatabilirdi, ancak bu, odadaki diğer herkesin görüntülemesi için kullanıcının şifresini ekranda bıraktı (örnekler aşağıdadır):
Bye HELLO 1,2;SECRET Ready
veya
I 1,2;SECRET Ready
veya
LOGIN 1,2;SECRET Ready
Komut yorumlayıcısı tarafından yazdırılan komut yanıtlarından bir terminalin durumu belirlenebilir. BASIC-PLUS KBM ile iletişim kuran oturum açmış bir kullanıcıya "Hazır" uyarısı verildi ve oturumu kapatan bir kullanıcıya "Güle güle" komutu verildi.
Bir kullanıcı, PPN numarasını ve şifresini girerek oturum açacaktır . Kullanıcı numaraları bir proje numarasından (bu, Unix'teki bir grup numarasına eşdeğer olacaktır), bir virgülden ve bir programcı numarasından oluşuyordu. Her iki sayı da özel istisnalar dışında 0 ile 254 arasındaydı. Bir hesap belirlenirken proje ve programcı numarası parantez içine alındı. Tipik bir kullanıcı numarası [10,5] (proje 10, programcı 5), [2,146], [254,31] veya [200,220] vb. olabilir. sistem yöneticisi etkinleştirmişti) PPN numaraları [0,0] idi ve SYSTAT CUSP'ta **,** olarak görünürdü . Dolayısıyla bu geçerli bir hesap numarası değil.
Sistem ve kullanıcı hesapları
Her projede, programcı numarası 0, özel sembol # ile referans alınabileceğinden, genellikle bir grup hesabı olarak ayrılmıştır. Birinin kullanıcı numarası [20,103] olsaydı, "#" ile başlayan bir dosya adına yapılan bir referans, [20,0] kullanıcı numarasının hesabında saklanan bir dosyaya atıfta bulunurdu. Bu özellik eğitim ortamlarında faydalı olacaktır, çünkü programcı numarası 0 bir sınıfın öğretim elemanına ve öğrencilere aynı proje numarası ile hesap verilen kişilere verilebilir ve öğretim elemanı kendi hesap dosyalarında sadece o sınıf için paylaşımlı olarak işaretlenmiş olarak saklayabilir. proje numarası (yalnızca o sınıftaki öğrenciler olacaktır, başka değil).
Proje numaralarının iki özel sınıfı mevcuttu. 0 proje numarası genellikle sistem yazılımı için ayrılmıştır ve Sürüm 9'dan önce yalnızca 1 proje 0 hesabı ([0,1] adlı) vardı. 1 numaralı projedeki programcılar, Unix sistemlerindeki tek hesap "kök"üne eşdeğer ayrıcalıklı hesaplardı, ancak [1,0] ile [1,254] arasındaki hesap numaralarının tümü ayrıcalıklı hesaplardı. Sürüm 9 yayınlandıktan sonra, herhangi bir hesaba sistem yöneticisi tarafından belirli ayrıcalıklar verilebilir.
[0,1] hesabı, işletim sistemi dosyasının kendisini, tüm çalışma zamanı kitaplık sistemlerini ve sistemin başlatılmasıyla ilgili belirli sistem dosyalarını depolamak için kullanılır (yazarın yorumları sağda kalın harflerle görünür):
DIR [0,1] Name .Ext Size Prot Date SY:[0,1] BADB .SYS 0P < 63> 06-Jun-98 List of bad blocks SATT .SYS 3CP < 63> 06-Jun-98 Bitmap of allocated disk storage INIT .SYS 419P < 40> 06-Jun-98 Operating system loader program ERR .ERR 16CP < 40> 06-Jun-98 System error messages RSTS .SIL 307CP < 60> 06-Jun-98 Operating system itself BASIC .RTS 73CP < 60> 06-Jun-98 BASIC-PLUS run time system RT11 .RTS 20C < 60> 06-Jun-98 RT-11 run time system SWAP .SYS 1024CP < 63> 06-Jun-98 System swap file CRASH .SYS 35CP < 63> 06-Jun-98 System crash dump RSX .RTS 16C < 60> 23-Sep-79 RSX-11 run-time system TECO .RTS 39C < 60> 24-Sep-79 TECO text editor Total of 1952 blocks in 11 files in SY:[0,1] (Editor's note: This directory listing is previous to Version 9.)
DIR komutu DOĞRUDAN program için bir RUN komutuna yüklü bir CCL eşdeğerdir. [0,1], işletim sistemi depolama hesabının hesap numarasıdır (ve dizin adıdır). "Proje numarası 0, programcı numarası 1" olarak anılacaktır.
Her dosyadan sonra gösterilen sayılar, bir blok 512 bayt veya 1/2 kilobayt (K) olan disk bloklarındaki boyutunu temsil eder . "C" dosyanın bitişik olduğunu belirtir ( bir sürücü birleştirildikten sonra Microsoft Windows sistemindeki dosyalara benzer şekilde parçalara ayrılmadan tek bir dosya olarak saklanır ), "P" ise özel olarak korunduğunu (silinemez, P biti ayrı bir komutla temizlenmedikçe, ayrıcalıklı bir kullanıcı tarafından bile). Parantez içindeki sayılar ("< 40>" gibi) her zaman ondalık olarak görüntülenen dosyanın korumalarını temsil eder. Korumalar, dosyanın başka bir kullanıcı tarafından, aynı programcı numarasına sahip başka kullanıcılar tarafından görülüp görülmediğini, dosyanın salt okunur olup olmadığını veya başka bir kullanıcı tarafından değiştirilip değiştirilemeyeceğini ve dosyanın sıradan bir kullanıcı tarafından yürütülüp yürütülemeyeceğini belirtir. onlara ek ayrıcalıklar. Bu koruma kodları , Unix ve BSD ve Linux gibi benzer işletim sistemlerindeki r, w ve x korumalarına çok benzer . Kod 60, özel bir dosyaya eşdeğerdir, kod 63, silinemez bir özel dosyadır ve 40, genel bir dosyadır.
Kitaplık dosyaları [1,1] hesabında tutulur ve genellikle LB: mantıksal adıyla başvurulur. [1,2] hesabı, sistem başlangıç hesabıdır (kök altında başlayan bir unix sistemi gibi) ve CUSP adının önüne bir dolar işareti ($) koyarak başvurulabilecek sistem CUSPS'sini içerir . "!" [1,3] hesabı için, [1,4] için "%" ve [1,5] için "&" kullanılır. Hesap [1,1] ayrıca, bu hesap altında oturum açan bir kullanıcının, sistemdeki herhangi bir belleğe değerler koymak için POKE sistem çağrısını yürütmesine izin verilen tek hesap olma özel ayrıcalığına sahipti. Bu nedenle, hesap numarası [1,1], Unix tabanlı sistemlerde "kök"e en yakın eşdeğerdir.
Çalışma zamanı ortamları
RSTS'nin özelliklerinden biri, programların yürütülmesi için araçlar ve bunları çalıştırmak için kullanılan ortamdır. BASIC-PLUS, geliştirilmiş BASIC-Plus-2 ve COBOL ve FORTRAN gibi daha geleneksel programlama dillerinde programlamaya izin verilen çeşitli ortamlar . Bu ortamlar birbirinden ayrıydı, öyle ki bir ortamdan bir program başlatılabilir ve sistem farklı bir program çalıştırırken farklı bir ortama geçer ve ardından kullanıcıyı başladığı orijinal ortama döndürür. Bu ortamlara RTS adı verildi . Bu RTS'lerin çoğunun sahip olduğu komut satırı arabirimi terimi KBM idi . Sürüm 9'dan önce, sistem yöneticisinin sistemin hangi RTS altında başlayacağını tanımlaması gerekiyordu ve bunun derlenmiş programları yürütecek bir sistem olması gerekiyordu.
Bir sistem yöneticisi, tüm KBM komutlarından ( DCL hariç ) öncelikli olan özel CCL komutları da kurabilir . CCL, Windows sistemindeki bir programın kısayoluna veya Unix tabanlı sistemlerdeki sembolik bağlantıya benzer. CCL'ler, başlatma sırasında veya sistem yöneticisi tarafından sistem çalışırken dinamik olarak bellekte yerleşik bir komut olarak yüklenir (yani: bir disk dosyası gibi kalıcı değildir).
Oturum açıldığında, kullanıcı bu ortamlardan herhangi birine "GEÇİŞ YAPABİLİR", BASIC-PLUS programlama dilinde dil ifadeleri yazabilir, belirli programlara RUN komutları verebilir veya komut seçeneklerine sahip bir programı yürütmek için CCL adlı özel bir komut verebilir. Çoğu RSTS sistem yöneticisi, kullanıcıya hangi programı çalıştırdığını, programın hangi RTS altında kullandığını, programın ne kadar bellek aldığını, ne kadar bellek kullandığını söyleyebilen "Control-T" tek satırlık durum seçeneğini içerecek şekilde çekirdeği oluşturdu. genişletin ve RTS'nin ne kadar bellek kullandığını belirleyin.
TEMEL-ARTI
BASIC-PLUS'ta yazılan programlar , BASIC RTS altında çalışır ve bu da onlara 32K bayta kadar (toplam 64K üzerinden) belleğe izin verir. Dil yorumlandı, her farklı anahtar kelime dahili olarak benzersiz bir bayt koduna dönüştürülür ve değişkenler ve veriler indekslenir ve bellek alanı içinde ayrı ayrı saklanır. Dahili bayt kodu formatı PCODE olarak biliniyordu - etkileşimli KAYDET komutu verildiğinde, BASIC Plus RTS çalışan bellek alanını ".BAC" uzantılı bir disk dosyasına kaydetti. Bu formatın belgelenmemiş olmasına rağmen, Birleşik Krallık'taki Southampton Üniversitesi'nden iki Elektronik Mühendisliği lisans öğrencisi ( Nick de Smith ve David Garrod ), BAC dosyalarını orijinal satır numaraları ve değişken adlarıyla (her ikisi de) orijinal BASIC Plus kaynaklarına tersine çevirebilen bir kod çözücü geliştirdiler. daha sonra DEC için çalıştı). Belleğin geri kalanı BASIC RTS'nin kendisi tarafından kullanıldı . Programlar, BASIC-Plus-2, FORTRAN-IV veya Macro Assembler gibi gerçek ikili yürütülebilir dosyalara izin veren bir dilde yazılmışsa, kullanılabilir bellek miktarı 56K ( RTS'ye ayrılmış 8K ) olacaktır. Standart BASIC-PLUS istemi, "Hazır" yanıtıdır (örnek):
new
New file name--HWORLD
Ready
10 Print "Hello World"
20 Input "Press Control-T for 1 line status: ";a$
30 End
run
HWORLD 10:17 PM 01-Jan-08
Hello World
Press Control-T for 1 line status: ?
1 KB0 HWORLD+BASIC KB(0R) 2(16)K+14K 0.2(+0.0) +0
Ready
save
Ready
compile
Ready
DIR HWORLD.*/na/ex/si/pr
SY:[1,2]
HWORLD.BAS 1 < 60>
HWORLD.BAC 7C <124>
Total of 8 blocks in 2 files in SY:[1,2]
Ready
DCL (Dijital Komut Dili)
Sürüm 9 ile başlayarak, DCL birincil başlangıç oldu RTS o ikili programları çalıştırabilme yeteneğine sahip olmamasına rağmen. Bu kaybolan RSX gelişine mümkün hale geldi RTS (aşağıya bakınız). DCL , uyumluluk için DEC işletim sistemlerinin (RSX-11, RT-11, VMS ve sonraki OpenVMS ) tüm son sürümlerine dahil edilmiştir . Standart DCL istemi dolar "$" işaretidir (örnek):
$ write 0 "Hello World, it is "+F$TIME()
Hello World, it is 01-Jan-08 10:20 PM
$ inquire p1 "Press Control-T for 1 line status:"
Press Control-T for 1 line status:
1 KB0 DCL+DCL KB(0R) 4(8)K+24K 0.1(+0.1) -8
$ set verify/debug/watch
$ show memory
(show memory)
(SYSTAT/C)
Memory allocation table:
Start End Length Permanent Temporary
0K - 85K ( 86K) MONITOR
86K - 1737K (1652K) (User)
1738K - 1747K ( 10K) (User) DAPRES LIB
1748K - 1751K ( 4K) (User) RMSRES LIB
1752K - 2043K ( 292K) ** XBUF **
2044K - *** END ***
$
RSX (Gerçek Zamanlı Sistem Yöneticisi)
COBOL, Macro Assembler veya BASIC-Plus-2'nin sonraki sürümleri gibi RSX RTS için yazılmış programlar, ikili bir program için mevcut olan maksimum bellek miktarını kullanabilir ( en üst 8K'ya ihtiyaç duyan bir RTS'nin gereksinimleri nedeniyle 56K). kendisi için kullanmak için). RSTS Sürüm 7 ve üstü RSX izin RTS böylece kullanıcı programları için bellek 64 K bayt izin, tamamen kullanıcı adres uzaydan "yok" hale çekirdeğe dahil edilecek.
Programlar, kütüphaneleri kullanarak (izin verildiğinde), karmaşık bindirme stratejileriyle veya diğer programları çağırarak ("Zincirleme") ve bunlara "Core Common" adlı paylaşılan bir bellek alanında komutlar ileterek, kullanılabilir bellek miktarının sınırlamalarını aşmışlardır. diğer uygulamalar. RSX varsayılan KBM olduğunda, standart RSX istemi (hem oturum açmış hem de oturumu kapatmış) ">" (veya MCR "Monitör Konsolu Rutini") işaretidir (örnek):
>run
Please type HELLO
>HELLO 1,2;SECRET
>run
?What?
>help
Valid keyboard commands are:
ASSIGN DISMOUNT HELP RUN UNSAVE
BYE EXIT MOUNT SHUTUP
DEASSIGN HELLO REASSIGN SWITCH
>run CSPCOM
CSP>HWORLD=HWORLD
CSP>^Z
>RUN TKB
TKB>HWORLD=HWORLD,LB:CSPCOM.OLB/LB
TKB>//
>run HWORLD.TSK
Hello World
Press Control-T for 1 line status: ?
1 KB0 HWORLD+...RSX KB(0R) 7(32)K+0K 0.8(+0.2) +0
>DIR HWORLD.*/na/ex/si/pr
SY:[1,2]
HWORLD.BAS 1 < 60>
HWORLD.BAC 7C <124>
HWORLD.OBJ 2 < 60>
HWORLD.TSK 25C <124>
Total of 35 blocks in 4 files in SY:[1,2]
>
RT-11
RT-11 RTS , RT-11 dağıtımının Tek İş sürümünü taklit etti. RSX öykünmesi gibi, RT-11 de en üstteki 8K belleği işgal etti ve en alttaki 56K'yı CUSPS , FORTRAN-IV veya Macro Assembler'da yazılmış programlar için bıraktı . RT-11 varsayılan KBM olduğunda, standart RT-11 istemi (hem oturum açmış hem de oturumu kapatmış) "." işaret (örnek):
.VERSION
Please type HELLO
.HELLO 1,2;SECRET
.VERSION
RT-11SJ V3-03; RSTS/E V8.0
.R PIP
*HWORLD.MAC=KB:
.MCALL .TTYIN,.PRINT,.EXIT
HWORLD: .ASCII /Hello World/<15><12>
.ASCIZ /Press Control-T for 1 line status:/
.EVEN
Start: .PRINT #HWORLD
.TTYIN
.EXIT
.END START
^Z
*^Z
.R MACRO
HWORLD=HWORLD
*^Z
.R LINK
*HWORLD=HWORLD
*^Z
.R HWORLD.SAV
Hello World
Press Control-T for 1 line status:
1 KB0 HWORLD+RT11 KB(0R) 2(28)K+4K 0.6(+0.2) +0
..DIR HWORLD.*/na/ex/si/pr
SY:[1,2]
HWORLD.BAS 1 < 60>
HWORLD.BAC 7C <124>
HWORLD.TSK 25C <124>
HWORLD.MAC 1 < 60>
HWORLD.OBJ 1 < 60>
HWORLD.SAV 2C <124>
Total of 37 blocks in 6 files in SY:[1,2]
.
TECO (Metin Düzenleyici ve Düzeltici)
TECO düzenleyici kendisi düzenleme için kullanılabilen hafıza miktarını maksimize etmek için bir RTS, S olarak uygulanan ve aynı zamanda genel amaçlı ilk çalışma zamanı sistemleri (RSX ve RT11) serbest bırakmadan önce, RSTS V5B uygulanmıştır, çünkü oldu. TECO, yerleşik bir KBM içermeyen RSTS ile dağıtılan tek RTS idi. Kullanıcı, bir TECO programını (TECO.TEC) çalıştırarak TECO'yu (diğer herhangi bir program gibi) başlatır. TECO ve afin QEDIT, ilk UNIX tabanlı metin editörü ED'nin doğrudan atalarıydı. Çoğu RSTS sistemi, bir dosya oluşturmak (MAKE filespec), bir dosyayı düzenlemek (TECO filespec) veya bir TECO programını çalıştırmak (MUNG filespec, data) için CCL'leri kullandı. Aşağıdaki program, pi'yi (şu anda 20 haneye ayarlı) hesaplamak için TECO'nun nasıl kullanılabileceğinin bir örneğidir :
Ready
run TECO
*GZ0J\UNQN"E 20UN '
BUH BUV HK
QN< J BUQ QN*10/3UI
QI< \ +2*10+(QQ*QI)UA
B L K QI*2-1UJ QA/QJUQ
QA-(QQ*QJ)-2\ 10@I// -1%I >
QQ/10UT QH+QT+48UW QW-58"E 48UW %V ' QV"N QV^T '
QWUV QQ-(QT*10)UH >
QV^T @^A/
/HKEX$$
31415926535897932384
Ready
RSTS paskalya yumurtaları
Sistem başlatma (INIT.SYS)
Bir kullanıcı sistem önyüklemesinde INIT.SYS'nin "Option:" istemine tanınmayan bir komut yazarsa, başlatma yardımcı programı "yardım için 'HELP' yazın" mesajı görüntülenir. Kullanıcı daha sonra komut istemine 'YARDIM' (tırnak işaretleri dahil) yazarsa, yanıt "Ne kadar eğlenceli, zaten..." ve ardından gerçek yardım mesajı gelir.
PDP-11 konsol ışıkları
Bir sistem yöneticisinin çekirdeğe derleyebileceği güzel özelliklerden biri, konsol ışıklarının etrafında birbirini kovalayan 2 yılanın yanılsamasını veren dönen bir ekran deseniydi. Normal çekirdek, alt kısımdaki veri ışıklarında sağdan sola hareket eden 1 yılanın yanılsamasını verir. Sistem yöneticisi ayrıca "ışıklar" nesne modülünü de derlerse, kullanıcı üstteki adres ışıklarında soldan sağa hareket eden ek bir yılan görür. Bu, 9.0'dan önceki sürümlerde denetim modu kullanılarak gerçekleştirildi. RSX de 2 yılan tavuk oynuyormuş gibi görünecek ve konsolun ortasında birbirine çarpacak benzer bir görüntü düzenine sahipti.
Teco paskalya yumurtası
'make' komutu, bir kullanıcının bir metin dosyası oluşturmasına ve otomatik olarak TECO metin düzenleyicisine girmesine izin verdi. Bir kullanıcı 'sevişmek' yazarsa, sistem 'aşk' adında bir dosya oluşturur ve 'Savaş değil mi?'
Dosya Listesini Aç
Daha sonra DEC için çalışan Kevin Herbert, 90'larda bir kullanıcının ^F girerek kullanıcı işleminin sahip olduğu açık dosyaların bir listesini, kullanımdaki bloklar ve dosya boyutlarıyla birlikte görmesine izin vermek için belgelenmemiş bir özellik ekledi.
Yıldız tarihi
9.0 sürümünden başlayarak, belgelenmemiş bir özellik , sistem yöneticisinin sistem tarihinin görüntüsünü değiştirmesine olanak tanır. RSTS artık, Star Trek TV dizisinden yaygın olarak bilinen bir yıldız tarihini temsil eden bir dizi sayı olarak sistem tarihini görüntüleyen ilk işletim sistemi oldu .
Diğer şirketler tarafından eklentiler
System Industries adlı bir geliştirmeyi uygulamak için RSTS için tek kaynak lisansı satın aldı.Özel disk denetleyicilerinin disk erişimi için bir semafor bayrağı ayarlamasına izin veren SIMACS (Eşzamanlı Makine Erişimleri), diskin birden çok PDP-11 RSTS sistemi tarafından paylaşıldığı bir RSTS Sisteminde aynı dosyalara birden çok YAZILMAYA izin verir. Bu özellik, birçok DEC bilgisayarına bağlı olan ve Dr. Albert Chu tarafından System Industries'de çalışırken tasarlanan System Industries denetleyicilerinde uygulandı.
Ana yenilik, işbirlikçi paylaşım yoluyla hangi işlemcinin özel yazma erişimine sahip olduğunu gösteren bir bayrak olan bir semaforun kullanılmasıydı .
Bu, disklere erişimin RSTS işletim sistemi tarafından gerçekleştirilme biçiminde birçok değişiklik gerektirdi. G/Ç erişimini işleyen FIPS (Dosya Bilgi İşleme Sistemi) sistemi, RSTS'de tek iş parçacıklı idi. Başka bir makine bir bloğa etkin erişime sahipken bir disk erişiminin durmasına izin vermek için, FIPS'nin bir isteği zaman aşımına uğratabilmesi, bir sonraki talebe gitmesi ve durdurulan bir 'dönüş' tarzında 'geri gelmesi' gerekiyordu. Buna izin veren kod, Milipitas, CA'daki System Industries'de çalışırken Philip Hunt tarafından yazılmıştır. Sonunda 1980'lerin sonlarında ve 90'ların başında New England bölgesinde Digital Equipment için çalıştı.
SIMACS , PDP-11 ürün grubuyla sınırlı değildi ; VAXen de kullanabilir.
RSTS öykünmeleri
ROSS/V
1981'de Evans Griffiths & Hart, ROSS/V ürününü pazarladı . ROSS/V , RSTS'nin ( CUPS , RTS ler ve kullanıcı programları) tüm kullanıcı modu işlemlerinin VAX-11 makinelerinde VMS altında değiştirilmeden çalıştırılmasına izin verdi . Bu öykünmenin kodu, normalde bir PDP-11 üzerinde çalışan bir RSTS çekirdeği tarafından işlenecek olan tüm çekirdek işlemlerini ele aldı. RSTS'nin tüm sürümlerinde kullanılan orijinal BASIC-PLUS dili, Evans Griffiths & Hart, Inc. tarafından 10.500 dolarlık sabit bir fiyatla alt yükleniciye verildi.
Diğer PDP-11 emülatörleri
RSTS ve uygulamaları, herhangi bir PDP-11 öykünücüsü altında çalışabilir. Daha fazla bilgi için bkz. PDP-11
RSTS maskotu
Spike ve Albert
Sürümler
RSTS başlangıçta BTSS (Temel Zaman Paylaşım Sistemi) olarak adlandırıldı. Sevkiyat fiilen başlamadan önce, BTSS adlı bir ürün Honeywell tarafından zaten pazarlandığı için BTSS olan isim RTSS olarak değiştirildi . Basit bir yazım hatası, adı RTSS'den RSTS'ye değiştirdi.
Sürüm | Yayın tarihi | Notlar |
---|---|---|
1 | asla yayınlanmadı | |
2A-19 | 1971 | Carleton College ve Seattle Pacific College'da kuruldu. |
2B | Haziran 1971 | Delaware School Auxiliary Association'da kuruldu. |
2C | Ekim 1971 | Gelişmiş yazılım desteği (kayıt G/Ç) |
3A-19 | Ocak 1972 | |
3B | Mayıs 1972 | |
3C | Haziran 1972 | Gelişmiş yazılım desteği (GÜNCELLEME modu) |
4A-12 | Ekim 1972 | Yeni donanım desteklenir. |
4B | Temmuz 1975 | Yeni özellik içermeyen yamalı V4A sürümü |
Yeni bellek yönetimi desteğinin eklenmesi ve PDP-11/40 ve PDP-11/45'te daha fazla bellek takma yeteneği, başka bir ad değişikliğine yol açtı: RSTS-11 artık RSTS/E oldu.
Sürüm | Yayın tarihi | Notlar |
---|---|---|
5A-21 | Temmuz 1973 | 64KB'den 256KB'ye kadar bellek yönetimi uzantıları. |
5B-24 | Kasım 1974 | Çoklu SWAP dosyaları, RTS ve CCL tanıtıldı. |
5C-01 | Mart 1975 | V5B'nin yeni özellik içermeyen yamalı sürümü. |
6A-02 | Ağustos 1975 | Yeni donanım, 22 bit adresleme (2 MB), 63 iş. |
6B-02 | Şubat 1977 | Yeni donanım, RT-11 altında SYSGEN, çalışma zamanında CCL. |
6C-03 | Şubat 1978 | DECnet Faz II, DTR, DIBOL desteklenir. SÜPERVİZÖR modu. |
7.0 | Ağustos 1978 | Yeni donanım, (4 MB), RDC desteği. |
7.1 | Şubat 1981 | Çekirdek modu Talimat ve Veri alanı desteği, DECnet Aşama III. |
7.2 | Ağustos 1982 | Yeni donanım (UDA50 sürücüleri). |
8.0-06 | Nisan 1983 | Yeni donanım (MicroPDP-11). |
9.0-14 | Mayıs 1985 | Yeni donanım, DCL varsayılanı, PBS, çoklu ayrıcalıklar, karma parolalar, yeni Yedekleme yardımcı programı ve Stardate. |
9.1-05 | Ekim 1985 | Gelişmiş donanım desteği, çok iş parçacıklı FIP, LOAD INDEX. |
9.2-10 | Haziran 1986 | Yeni donanım desteklenir. |
9.3-20 | Ocak 1987 | Gelişmiş donanım desteği, DECnet Aşama IV. |
9.4 | Temmuz 1987 | Yeni donanım, Zamanlayıcı ve Terminal Hizmeti iyileştirmeleri. |
9.5-08 | Aralık 1987 | Clustersize 64'e yükseltildi, BACKUP/DIR eklendi. |
9.6 | Eylül 1988 | LAT desteği, YARDIM SPIKE. |
9.7 | Temmuz 1989 | Yeni donanım, DV0: çalışma zamanında, ANSI PDP-11C kullanılabilir. |
10.0 | Mayıs 1990 | TTDRV'de komut satırı geçmişi. |
10.1 | Eylül 1992 | Y2K düzeltmeleri. |
SSCB'deki klonlar
- DOS-KP ("ДОС-КП")
Uygulamalar
Bilgisayar büroları bazen RSTS/E-tabanlı veri yönetimi için Kullanıcı-11'i görevlendirdi .
Ayrıca bakınız
- Asenkron Sistem Tuzağı
- TEMEL-Artı-2
- Kısa Komut Dili
- DATATRIEVE
- DECnet
- Ön panel
- Kevin Mitnick
- Yerel Alan Taşımacılığı
- Sekizli Hata Ayıklama Tekniği
- QIO
- Kayıt Yönetim Hizmetleri
- çalışma zamanı sistemi
- SYSSTAT (komut)
- Zaman paylaşımı
- Zaman paylaşımlı sistem evrimi