Delen via


Definities

Dit document bevat de definities van specifieke woorden en woordgroepen in deze ruimte en worden gebruikt als verwijzing in deze documentenset.

Opdrachtregeltoepassingen

Opdrachtregeltoepassingen, of ook wel 'consoletoepassingen' genoemd en/of aangeduid als 'clients' van het consolesubsysteem, zijn programma's die voornamelijk op een stroom tekst- of tekengegevens werken. Ze bevatten over het algemeen geen elementen van hun eigen gebruikersinterface en delegeren zowel de uitvoer/weergave als de invoer-/interactierollen aan een hostingtoepassing. Opdrachtregeltoepassingen ontvangen een stroom tekst op hun standaardinvoergreep STDIN die de toetsenbordinvoer van een gebruiker vertegenwoordigt, die informatie verwerkt en vervolgens reageert met een stroom tekst op de standaarduitvoer STDOUT voor weergave naar het beeldscherm van de gebruiker. Dit is natuurlijk in de loop van de tijd ontwikkeld voor extra invoerapparaten en externe scenario's, maar dezelfde basis filosofie blijft hetzelfde: opdrachtregelclients werken op tekst en iemand anders beheert display/invoer.

Standaardgrepen

De standaardgrepen zijn een reeks, STDIN, STDOUTen STDERR, geïntroduceerd als onderdeel van een procesruimte bij het opstarten. Ze vertegenwoordigen een plaats waar informatie wordt geaccepteerd op de weg en teruggestuurd naar buiten (inclusief een speciale plaats om fouten te melden). Voor opdrachtregeltoepassingen moeten deze altijd bestaan wanneer de toepassing wordt gestart. Ze worden automatisch overgenomen van het bovenliggende item, expliciet ingesteld door het bovenliggende item of automatisch gemaakt door het besturingssysteem als geen van beide is opgegeven of toegestaan. Voor klassieke Windows-toepassingen zijn deze mogelijk leeg bij het opstarten. Ze kunnen echter impliciet of expliciet worden overgenomen van het bovenliggende of toegewezen, gekoppelde en vrije tijdens runtime door de toepassing zelf.

Standaardgrepen impliceren geen specifiek type aangesloten apparaat. In het geval van opdrachtregeltoepassingen is het apparaat echter het meest een consoleapparaat, bestand (van omleiding in een shell) of een pijp (van een shell die de uitvoer van een hulpprogramma verbindt met de invoer van het volgende). Het kan ook een socket of een ander type apparaat zijn.

TTY/PTY

Op niet-Windows-platforms vertegenwoordigen de TTY- en PTY-apparaten respectievelijk een echt fysiek apparaat of een door software gemaakt pseudoapparaat dat hetzelfde concept is als een Windows-consolesessie: een kanaal waarin communicatie tussen een opdrachtregelclienttoepassing en een serverhosttoepassing voor interactiviteit of een fysiek toetsenbord/beeldschermapparaat op tekst gebaseerde informatie kan uitwisselen.

Clients en servers

Binnen deze ruimte verwijzen we naar 'clients' als toepassingen die het werk doen van het verwerken van informatie en het uitvoeren van opdrachten. De 'server'-toepassingen zijn de toepassingen die verantwoordelijk zijn voor de gebruikersinterface en die werkrollen zijn voor het vertalen van invoer en uitvoer in standaardformulieren namens de clients.

Consolesubsysteem

Dit is een catch-all term die alle modules vertegenwoordigt die van invloed zijn op console- en opdrachtregelbewerkingen. Het verwijst specifiek naar een vlag die deel uitmaakt van de Portable Executable-header die aangeeft of de starttoepassing een opdrachtregel-/consoletoepassing is (en moet standaardgrepen hebben om te starten) of een Windows-toepassing (en deze niet nodig heeft).

De consolehost, opdrachtregelclienttoepassingen, het consolestuurprogramma, het console-API-oppervlak, de pseudoconsole-infrastructuur, terminals, configuratie-eigenschappenbladen, de mechanismen en stubs in het proceslaadprogramma en alle hulpprogramma's die betrekking hebben op de werking van deze vormen van toepassingen, worden beschouwd als behorend tot deze groep.

Consolehost

De Windows-consolehost of conhost.exeis zowel de servertoepassing voor alle Windows Console-API's als de klassieke Windows-gebruikersinterface voor het werken met opdrachtregeltoepassingen. De volledige inhoud van dit binaire bestand, zowel de API-server als de gebruikersinterface, behoort historisch tot Windows csrss.exe, een kritiek systeemproces en is afgeleid voor beveiligings- en isolatiedoeleinden. In de toekomst conhost.exe blijft dit verantwoordelijk voor het onderhoud en de vertaling van API-aanroepen, maar de onderdelen van de gebruikersinterface zijn bedoeld om via een pseudoconsole te worden gedelegeerd aan een terminal.

Pseudoconsole

Dit is de Windows-simulatie van een pseudoterminal of PTY van andere platforms. Het probeert overeen te komen met de algemene interface-filosofie van PTY's, die een eenvoudig bidirectioneel kanaal van tekstgebaseerde communicatie biedt, maar het vormt een aanvulling op Windows met een grote compatibiliteitslaag om de breedte van Windows-toepassingen te vertalen die vóór deze ontwerp filosofie zijn geschreven van het klassieke console-API-oppervlak in het eenvoudige tekstkanaalcommunicatieformulier. Terminals kunnen de pseudoconsole gebruiken om eigenaar te worden van de gebruikersinterface-elementen van de consolehost, conhost.exeterwijl deze verantwoordelijk blijft voor de API-onderhoud, vertaling en compatibiliteitsinspanningen.

Luchthaventerminal

Een terminal is de gebruikersinterface- en interactiemodule voor een opdrachtregeltoepassing. Tegenwoordig is het een softwareweergave van wat vroeger een fysiek apparaat was met een beeldschermmonitor, een toetsenbord en een bidirectioneel serieel communicatiekanaal. Het is verantwoordelijk voor het verzamelen van invoer van de gebruiker in verschillende formulieren, het vertalen en coderen ervan en eventuele speciale opdrachtgegevens in één tekststroom en het verzenden naar de PTY voor verzending naar het STDIN kanaal van de opdrachtregelclienttoepassing. Het is ook verantwoordelijk voor het ontvangen van back-informatie, via de PTY, die afkomstig is van het kanaal van STDOUT een clienttoepassing, het decoderen van eventuele speciale informatie in de nettolading, het opmaken van alle tekst en aanvullende opdrachten, en het presenteren ervan aan de eindgebruiker.