Systemstödsprogram - System Support Program
| Utvecklaren | IBM |
|---|---|
| Arbetsstat | Avbruten |
| Första utgåvan | 1977 |
| Plattformar | System / 34 och System / 36 minidator |
| Standard användargränssnitt | Kommandoradsgränssnitt |
| Licens | Proprietär |
| Föregås av | System / 32 System Control Program (SCP) |
| Efterföljande | OS / 400 |
System Support Program ( SSP ) var operativsystemet för IBM System / 34 och System / 36 minidatorer . SSP var ett kommandobaserat operativsystem som släpptes 1977.
Historia
SSP innehöll ursprungligen cirka 60 kommandon som implementerades på System / 34 från 1977 till 1983 i olika versioner som kallades utgåvor. Release 1 utfärdades med originalet S / 34 1977. Release 9 utfärdades 1981. 1983 ompackade IBM SSP på en ny dator som heter IBM System / 36 , som inte var kompatibelt med objektkoden med S / 34. 1994 packade IBM om SSP på en uppdaterad modell av S / 36 som kallades Advanced / 36 . A / 36 var en IBM AS / 400 som lät SSP implementeras som en "virtuell maskin".
Större utgåvor av SSP inkluderar:
- S / 34
- S / 34 Release 1.0 - detta levererades uppenbarligen med den första S / 34 1977.
- S / 34 Release 8.0 - detta verkar ha utfärdats omkring 1980.
- S / 34 Release 9.0 - detta var den senaste versionen för S / 34 c.1980.
- S / 36
- S / 36 Release 1.0 - detta skickades uppenbarligen med den första S / 36 1983.
- S / 36 Release 2.0 - den här versionen stödde 8809 bandenhet.
- S / 36 Release 4.0 - detta var release där S / 36 fick 5 jobbköer.
- S / 36 Release 5.1 - den här versionen från 1988 var den senaste stora förändringen på 536X-plattformar.
- S / 36 Release 6.0 - även känd som VASP eller Value-Added Support Product, den här versionen lade till funktionalitet som tillät programsamtal i RPG, och det tillhandahöll också programvara för att beräkna storleken AS / 400 som användaren skulle behöva vid uppgradering. VASP var kontroversiell. Rykten ryckte i branschpapper att kunden inte kunde gå tillbaka till 5.1 om 6.0 inte fungerade tillräckligt. Programsamtal med RPG CALL / PARM var sämre än RPGIII-design och sämre än kundtilläggsprodukter.
- S / 36 Release 7.1 - denna version från 1994 levererades med Advanced / 36 (9402-236 modeller). De första A / 36-maskinerna skulle inte fungera på en lägre släpp och var inte heller kompatibla med 7,5 (medan tekniskt sett sant, programobjektkoden från en 7.1-maskin skulle köras på en 7,5 och vice versa, plus många 9402-236: er uppgraderades till 9402 -436, som de bytte ut moderkortet och installerade lite ny LIC-kod och du återställde på en kopia av dina filer och voila, allt fungerade). Rykten sprids om att tidigare kompilatorer för tidigare släpp inte skulle fungera på Advanced / 36, men de visade sig ogrundade. Det fanns anledningar till att en programmerare hellre skulle använda 5.1 RPGII-kompilatorn istället för den förmodligen mer avancerade 7.x-kompilatorn.
- S / 36 Release 7.5 - 1995-versionen levererades med den andra och sista vågen i Advanced / 36 (9402-436). Funktioner som WRKSYSVL gjorde det möjligt för operatören att ändra systemtiden i farten, vilket var intressant eftersom kundtillägg för att göra detta genom assembler-underrutiner inte fungerade på Advanced / 36. Men assemblerrutiner för att göra saker som att öppna / stänga filer, hämta VTOC etc. fungerade bra på 7.1 och 7.5
- Gäst / 36 - detta är version 7.5, men du kan ställa in en M36 (en gäst) på en AS / 400 (kör OS / 400 V3R6 genom V4R4), och den skulle fungera precis som 9402-436, förutom att dessutom att ha denna gäst "partition", du hade också OS / 400 om du ville ha det. Så om 9402-436 som kom i 3 hastigheter 2102, 2104 och 2106 (där den senare var ungefär 2,7 gånger snabbare än basen) inte var tillräckligt snabb, kunde du få en 9406-xxx-maskin och installera en "gäst / 36 " på en sådan. Och faktiskt kan du installera mer än en gäst / 36. Det fanns vissa begränsningar av antalet bifogade arbetsstationer, men att ha två gäst / 36 som körs på en AS / 400 och ställa in DDM (distribuerad datahantering) mellan dem och även med OS / 400 för att vara värd för stora filer, kunde enkelt göras. Medan S / 36 och A / 36 för det mesta bara fungerade med twinax-anslutna terminaler, på en Guest / 36 (eller M / 36), kan du ha alla dina terminaler på ett LAN som kör tcp / ip och vara virtuella enheter i gäst / 36-miljön.
- S36EE (S / 36 exekveringsmiljö) - detta stöds inbyggt på AS / 400 och dess följning (iSeries, IBM i), vilket gör att en användare kan fortsätta att köra sina s / 36-program och procedurer utan att behöva konvertera dem. Många av systemprocesserna arbetar också med sådana. Även om det vanligtvis var "långsammare" eftersom det måste gå igenom ytterligare steg, men idag med sådana snabba maskiner, är hastigheten på en S36EE många gånger snabbare än A / 36-körningshastigheten. Exempel, ett jobb tog 12 minuter att köra på en Adv / 36, det tog 20 sekunder att köra i S36EE-läge. Objektkoden är dock INTE kompatibel med föregående S / 36 och A / 36, vilket innebär att man var tvungen att kompilera om alla program och menyer. En fördel är dock att du inte bara kan köra S36EE utan även OS / 400-applikationer. Du kan komma åt databastabeller i dina S / 36-program, du kan ringa RPG / 400- och RPGIV-program från ett S / 36-program. Så även om det tekniskt inte är SSP, ser det ut som SSP, det fungerar som SSP och det kommer att köra dina S / 36-program / procs.
Begränsningar på S / 36 och A / 36 och M / 36 operativsystem: Den maximala mängden diskutrymme som ett system kan använda var 4 gb (per förekomst av operativsystemet, så en maskin som kör två M36 "partitioner" kan ha 4 gb i vardera. En annan begränsning var programstorleken, kunde inte överstiga 64 kB. Om du hade ett program som var större än det, var du tvungen att bli kreativ de senare åren när samtal / parm kom på plats, eftersom du skulle flytta koden till ett kallat program, för om basprogrammet till exempel var 63 kb, skulle du enkelt kunna ringa ett 20 kb-kallat program. Du kunde inte heller ha mer än cirka 8 000+ filer på maskinen. Det fanns också begränsningar för antalet filer du kunde ta med in i ett program (igen, du kan komma runt genom att lägga in filer i anropade program och skicka resultatet in igen. Det maximala antalet poster du ursprungligen kunde ladda var cirka 8 miljoner och det maximala som en fil kunde innehålla var cirka 16 miljoner. dessa begränsningar finns i S36EE (det finns en få maximala antal filer i ett program, men mycket större # än i native SSP).
Funktioner och komponenter
Med hjälp av SSP kan operatören skapa, ta bort och hantera S / 34-36-objekt som bibliotek, datafiler , menyer , procedurer , källmedlemmar och säkerhetsfiler.
SSP innehåller moduler som DFU, SEU, SDA och WSU som tillåter operatörer att bygga bibliotek och filer, mata in information i dessa filer, producera enkla rapporter och upprätthålla en menystruktur som förenklar åtkomst till informationen. Advanced / 36 stöder inte WSU. Lösenord och resurssäkerhet också genomföras genom SSP, som är fjärrkommunikation, som idag liknar uppringd nätverk .
SSP är ett diskbaserat operativsystem . Datorprogram kan köras från den fasta disken, men inte från disketten eller bandet. Komplementet för ett System / 34 5340 eller System / 36 5360/5362 är en fast skivuppsättning med en till fyra fasta skivor, åtminstone en datorterminal och en 8 "diskettdisk, valfritt utrustad med två magasin enheter som kan innehålla 10 disketter vardera och tre diskettplatser .. AS / 36 5363/5364 har en 5-1 / 4 "diskettenhet. S / 36-datorer kan konfigureras med en 8809 band-enhet (800/1600 bpi) eller en 6157 1/4 "patron (QIC) -enhet. A / 36-datorer har en QIC-enhet med hög densitet men 5,25 "eller 8" diskettdrivenhet (singel) var valfri liksom en 9348-001 9 spår (rulle till rulle) 1600/6250 bpi banddrivenhet.
Systemverktygsprogram
SSP-procedurer använder verktygsprogram, som i vissa fall kan vara mer användbara för datorprogrammeraren än SSP-procedurerna själva. $ MAINT är biblioteksverktyget som används i ALOCLIBR, BLDLIBR, FROMLIBR, LIBRLIBR, REMOVE, CONDENSE, LISTLIBR och TOLIBR. $ COPY är filverktyget som används i SPARA, ÅTERSTÄLLA, COPYDATA och LISTDATA. Det finns många andra verktyg, inklusive $ FBLD, $ LABEL, $ DUPRD, $ INIT, $ DELET, $ HIST, $ CNFIG, #GSORT, $ PACK och $ PROF, som är mer flexibla på programnivå än tillhörande SSP-procedurer kan vara.
Konfigurera med CNFIGSSP
CNFIGSSP-proceduren användes för att konfigurera systemet, inklusive enheterna. Varje enhet tilldelas ett två-tecken-ID. Den första bokstaven måste vara alfabetisk; den andra måste vara alfamerisk. Systemet reserverade också vissa ID: n; enheten kan till exempel inte kallas I1 eller F1. I1 är namnet på diskettenheten; F1 är vad systemet kallar hårddisken (står för "fast disk", eftersom det inte är ett flyttbart diskpaket.)
För att tillämpa CNFIGSSP måste systemet vara dedikerat (inga andra användare är inloggade eller program som körs.) Systemet måste vara IPLed (startas om.) När IPL är klar visas de nya enheterna i statusdisplayen.
SDA - Hjälp till skärmdesign
SDA tillåter operatören att bygga skärmformat eller menyer. Kommandotangenter kan aktiveras / inaktiveras. Inmatningsfält, utmatningsfält och konstanter kan skapas och konditioneras. Villkor (i RPG kallas dessa indikatorer ) kan orsaka att fält försvinner eller byter färg.
SEU - Source Entry Utility
SEU är en textredigerare som tillåter datainmatning rad för rad. Särskilda formulär används för att hjälpa operatören att knappa in RPG-program eller andra typer av formulärbaserade språk (WSU, Sort, SDA, etc.)
SORT - Systemets sorteringsverktyg
SORT har en till åtta inmatningsfiler, som kan ha valfri inspelningslängd. Den har en utdatafil, med vilken längd som helst, som kan innehålla från noll till åtta miljoner plus poster.
En sortering kan innehålla hela poster eller bara 3-byte-adresser som pekar på poster i en associerad fil. Detta kallades en adress-ut-fil eller ADDROUT. När du använder en Addrout läser programmet in dessa 3-byte-adresser och hämtar sedan associerade poster från huvudfilen.
WSU - Work Station Utility
Detta var ett RPG-liknande språk som kördes på SSP. Det var inriktat på datainmatningsprogram. WSU var gratis, men det blev inte särskilt väl mottaget eftersom det var så begränsat.
DFU - Data File Utility
Det är ett kostnadsfritt objekt från IBM som används för att visa och ändra fältvärden i enskilda poster.
DFU kan användas
- av programmerare för att uppdatera databasfiler i farten utan att skriva program
- av programmerare för att skapa enkla program för att utföra grundläggande operationer på en databasfil
- av datainmatningspersonal för att lägga till eller ta bort poster från en fil eller för att skriva ut poster.
Programmering
Operativt kontrollspråk (OCL)
Språkprogram på hög nivå kräver att OCL är aktiverat. OCL används för att ladda program i systemets minne och starta dem (en process som kallas körning) och tilldela resurser som diskfiler, skrivare, meddelandemedlemmar, minne och diskutrymme till dessa program. Andra förmågor, som att visa text på skärmen, pausa meddelanden och så vidare, gör OCL mer kraftfull.
RPG II
RPG II modifierades från systemet / 3 dagar för att ge åtkomst till "WORKSTN-filen" för att tillåta ett stansat kortbaserat språk att interagera med en person som sitter vid ett tangentbord och en bildskärm. En WORKSTN-fil var en utdatafil (den skrev till monitorn) och också en inmatningsfil (eftersom den accepterade användarens tangentbordsinmatning). Således märktes det en kombinerad-primärfil eller en kombinerad efterfrågan-fil.
Kommandotangenter blev RPG-indikatorer KA-KY, och olika formulär på skärmen kändes igen av olika osynliga kontrolltecken gömda i själva formuläret. Eftersom användaren var tvungen att visa ett formulär på skärmen för att skriva, tillhandahöll RPG II ett sätt för ett program att skriva utdata innan han accepterade inmatning. Många framgångsrika programmerare gick från att använda den kombinerade primära WORKSTN-filen till att använda en kombinerad efterfrågan-fil, som hade funktionskoder för att läsa och skriva skärmen. Det fanns till och med ett sätt att koda för flera WORKSTN; flera personer kunde logga in på samma kopia av samma program i minnet. Den största programstorleken var 64k.
Programattribut - MRT, SRT, NRT och NEP
MRT = Multiple Requestor Terminal-program. SSP kan ansluta upp till 7 terminaler till ett program på en gång. Vilken operatör som helst kunde starta programmet vid sin terminal, då skulle andra operatörsterminaler anslutas när de valde samma program. Det maximala antalet terminaler som skulle kunna servas styrdes av programmeraren.
SRT = Single Requestor Terminal-program. Inte en MRT.
NRT = Inget förfrågningsterminalprogram. Startad vid en terminal släpper NRT den begärande terminalen och fortsätter. Detta liknar ett MS-DOS TSR-program (Terminate and Stay Resident). Per definition var alla program som EVOKEd eller skickades till JOBQ ett NRT.
NEP = Programmet slutar aldrig. Detta var vanligtvis ett interaktivt MRT-program som skulle vänta efter att alla terminaler kopplats bort tills någon terminal återanslutits, vilket undviker initieringskostnader. Detta användes vanligtvis för att tillåta stora program att implementeras som en kedja av små program som skulle passera terminalerna från en till en annan medan de fortfarande var redo att fortsätta bearbeta för andra terminaler och / eller efterföljande transaktioner. NRT-program kan också vara NEP om de skrivs för att slinga och vänta på något tillstånd som indikerar att det fanns arbete att göra. NEP-program slutade normalt inte förrän systemet stängdes av, såvida inte skrivet för att känna igen något speciellt avslutningsvillkor.
Objektkodformat
Cobol, Fortran och RPG genererade objektkod (typ O). Basic tolkades bara; ett kompileringsverktyg som heter BASICS skapade subrutinkod (typ R). Grundläggande program kunde sparas som källor för kompatibilitet med andra datorer, men projektets text bevarades i underrutinen (såvida inte programmeraren använde LOCK-parametern för att hålla den privat.)
Procedurer, som använder OCL för att starta program och tilldela resurser till dem, är typ P.
Källmedlemmar för alla objekt är typ S, med undantag för Basic enligt ovan.
DFU-program genererade subrutinkod (R). Så gjorde WSU-program.
Skärmformat genererade objektkod.
Menygenererad objektkod. En meny är helt enkelt ett mycket specifikt skärmformat med ett kompletterande meddelandemedlem som är suffix med två pundtecken ("##") för att innehålla den åtgärd som ska vidtas när det associerade numret valdes.
Populära SSP-applikationer
- Den programmerare och förarproduktivitet Aid (POP) var en allmänt använd utvecklingsprogram. Den inkluderades i Advanced 36.
- MAPICS , kontrollsystemet för tillverkning och produktion.
- IMAS, ett enkelt redovisningspaket
- BPCS, ett mer avancerat redovisningssystem
- IBM Office / 36- samlingen av program (DisplayWrite / 36, IDDU, Query och så vidare) var populärt i slutet av 1980-talet och levererades senare med Advanced / 36. System / 34 Text Editor var en föregångare till Office / 36.
- Britz Word Processing System var en allmänt ändrad textredigerare som hade mailmerge, etikett och grundläggande filredigeringsfunktioner.
System säkerhet
Det finns fyra typer av säkerhet på ett SSP-system:
- Badgesäkerhet.
- Lösenordssäkerhet.
- Resurssäkerhet.
- Menysäkerhet.
Märksäkerhet implementeras med en randläsarenhet ansluten till en terminal i 5250-serien. För att logga in skrev användaren inte bara informationen om användaren / lösenordet utan svepte också märket genom läsaren.
SECEDIT
SECEDIT-proceduren användes för att arbeta med användar-ID och lösenord. Användarprofilen innehåller ett alfanumeriskt användar-ID på 1 till 8 tecken, ett alfanumeriskt lösenord med fyra tecken, en kod för användarens säkerhetsbetyg - M (Master Security Officer), S (Security Officer), O (System Operator), C ( Subconsole Operator), eller D (Display Station Operator) - och ett antal andra standardinställningar.
SECEDIT RESOURCE-proceduren användes för att fastställa säkerhetsbetyg för fil-, bibliotek-, mapp- och gruppobjekt. Åtkomstnivåer för O (Ägare), C (Ändra), U (Uppdatering), R (Läs), E (Kör) eller N (Ingen) kan beviljas för en användare till en viss resurs. Ett gruppobjekt var ett slags holdingbolag som ägde ett eller flera lägre objekt. Till exempel att bevilja åtkomst till gruppen ACCOUNTG gjorde det lättare att skapa tillgång till alla redovisningsfiler. Gruppobjekt kan också referera till gruppfiler; gruppen UB refererade till UB.OLD, UB.NEW, UB.01 eller något filnamn med den inbäddade perioden.
SECEDIT USERID användes också för att begränsa en användares operativa behörighet till en viss meny. Genom att ange en Y för obligatorisk meny och ange en standardinloggningsmeny kan säkerhetsansvarig förhindra användaren från programåtkomst som inte finns på den inloggningsmenyn. En så begränsad användare kunde bara köra menyalternativ, skicka meddelanden och logga av systemet.
Andra förfaranden
PROF-proceduren ("Profil") användes för att arbeta med användar-ID och lösenord. Användarprofilen innehåller ett alfanumeriskt användar-ID på 1 till 8 tecken, ett alfanumeriskt lösenord med fyra tecken, en kod för användarens säkerhetsbetyg — M (Master Security Officer), S (Security Officer), O (System Operator), C ( Subconsole Operator), eller D (Display Station Operator) - och ett antal andra standardinställningar.
PRSRCID-proceduren ("Profile Resource Security By User ID") användes för att fastställa säkerhetsbetyg för fil- och biblioteksobjekt. Åtkomstnivåer för O (Ägare), G (Ändra), R (Läs), E (Kör) eller N (Ingen) kan beviljas för en användare till en viss resurs.
Den tryckta skivkatalogen (VTOC, volym Innehållsförteckning) visade alla säkra objekt med notationen 3 som säkrade.
Filer, bibliotek och mappar
SSP tillhandahåller två olika dataobjekt som kallas filer och bibliotek. Filer innehåller poster, nästan alltid med en fast inspelningslängd. Bibliotek innehåller program som kan referera till och komma åt dessa filer. SSP innehöll mer än 80 olika kommandon som gjorde det möjligt för operatörer att skapa, ta bort, kopiera, redigera / ändra och säkra filer och bibliotek.
Ett bibliotek eller en fil måste finnas i en angränsande organisation på en fast disk (dock kan ett bibliotek innehålla en "utsträckning" på ungefär 50 block som måste omorganiseras och det kan inte förlängas om det tilldelas andra användare). En fil kan organiseras med ett EXTEND-värde eller den kan tilldelas med FILE OCL för att automatiskt förlänga. Alla poster som läggs till / uppdateras / raderas väntar medan filen förlängs. Det är bra att skapa förlängningsvärden som är tillräckligt stora för att minimera frekvensen av utvidgningar. Bibliotek kan ha "omfattningar" som inte var sammanhängande. Ibland, när man sammanställer ett program, skulle en omfattning skapas och genom att göra en "CONDENSE" togs den bort om det fanns tillräckligt med utrymme i huvudtilldelningen för det. Annars gjorde man en ALOCLIBR för att omfördela biblioteket till en större storlek.
Filer på S / 36 kan vara sekventiell (S), direkt (D) eller indexerad (I). En indexerad fil kan ha flera alternativa index (X), och i själva verket kan en sekventiell fil ha alternativa index placerade så att det inte finns något primärt index. En indexerad fil innehåller en nyckel som måste vara sammanhängande och kan bestå av upp till 60 tecken. emellertid kan alternativa index ha tredelade nycklar som inte är angränsande med varandra. Dubbla nycklar i indexerade eller alternativa indexfiler kan tillåtas eller tillåtas. En fil med direkt organisation byggs med alla poster tillagda och kan inte förlängas automatiskt. En fil med sekventiell eller indexerad organisation byggs utan att några poster har lagts till. Ett alternativt index har alltid lika många poster som dess överordnade, i motsats till en logisk fil i System / 38-stil som är byggd med villkor för att filtrera poster från föräldern.
1986 lades stöd till Distribuerad datahanteringsarkitektur (DDM) till SSP. Detta gjorde det möjligt för System / 36-program att skapa, hantera och få tillgång till postorienterade filer på fjärrsystem / 36, System / 38 och IBM-stordatorer som kör CICS . Det aktiverade också program på fjärrsystem System / 36 och System / 38 för att skapa, komma åt och hantera filer på ett System / 36. De ursprungliga inspelningsorienterade filmodellerna som definierades av DDM baserades på filsystemet System / 36.
Relaterade operativsystem
Den System / 3 (1969) drev en satsvis operativsystem diskbaserad kallas System Control Program (SCP) (5702-SC1). IBM introducerade senare ett online-program för System / 3 med namnet Communications Control Program (CCP) som startades som ett batchprogram. IBM System / 32 (1975) körde ett diskbaserat operativsystem som också kallas System Control Program. IBM System / 38 (1978) körde ett operativsystem med namnet Control Program Facility (CPF) som var mycket mer avancerat än SSP och inte särskilt lika.
Källor
- IBM-publikation SC21-8299, allmän information för SSP-operativsystem.
externa länkar
- Bitsavers Archive of System / 34 Documentation - Inkluderar dokumentation om SSP
- Bitsavers Archive of System / 36 Documentation - Inkluderar dokumentation om SSP