Fichier spécial ops0

Objectif

Permet d'accéder au lien optique série par le moyen de Présentation du gestionnaire de périphériques de liaison optique série.

Descriptif

Le pilote de périphérique de liaison optique série est un composant du sous-système d'E-S de communication. Le pilote de périphérique peut prendre en charge un à quatre ports optiques série. Un port optique est constitué de deux pièces distinctes. L'adaptateur de liaison série se trouve sur la carte système et est livré avec deux à quatre adaptateurs dans une seule puce. Le convertisseur de canal optique série se branche dans un emplacement sur la carte mère et fournit deux ports optiques distincts.

Le fichier spécial ops0 fournit un accès au sous-système de port optique. Une application qui ouvre ce fichier spécial a accès à tous les ports, mais n'a pas besoin de connaître le nombre de ports disponibles. Chaque opération d'écriture inclura un ID processeur de destination, et le pilote de périphérique acheminera les données via le port approprié pour atteindre ce processeur. S'il existe plusieurs chemins d'accès à la destination, le pilote de périphérique utilise tout lien disponible, en cas d'échec d'un lien.

Usage Considerations

Lors de l'accès au pilote de périphérique de liaison optique série, les éléments suivants doivent être pris en compte:

Article Descriptif
Initialisation et arrêt du pilote Le pilote de périphérique peut être chargé et déchargé. Le pilote de périphérique prend en charge les appels de configuration à initialiser et à se terminer.
Prise en charge des fichiers spéciaux Les appels autres que les sous-routines Ouvert et Fermer sont discutés en fonction du mode d'exploitation du pilote de périphérique.

Support de sous-routine

Le pilote de périphérique de liaison optique série fournit une prise en charge spécifique pour les sous-routines Ouvert, Fermer, Lireet écrire.

Sous-routines ouvertes et proches

Le pilote de périphérique prend en charge le fichier spécial /dev/ops0 sous la forme d'un fichier spécial de type multiplex. Le fichier spécial doit être ouvert pour la lecture et l'écriture (R_RDWR). Il n'existe aucune considération particulière pour la fermeture du fichier spécial. Le nom de fichier spécial est utilisé dans un appel Ouvert en fonction de la manière dont l'unité doit être ouverte. Les deux types de noms de fichier spéciaux sont les suivants:

Article Descriptif
/dev/ops0 Démarrele pilote de périphérique en mode normal.
/dev/ops0/S Démarque le pilote de périphérique en mode sérialisé. Par conséquent, le pilote de périphérique transmet des données dans le même ordre dans lequel il reçoit les données.

sous-routine read

Peut prendre la forme d'une sous-routine Lire, Readx, Readvou Readvx . Pour cet appel, le pilote de périphérique copie les données dans la mémoire tampon spécifiée par l'appelant.

Sous-routine d'écriture

Peut prendre la forme d'une sous-routine écrire, Writex, Writevou Writevx . Pour cet appel, le pilote de périphérique copie les données utilisateur dans une mémoire tampon du noyau et transmet les données.

Codes d'erreur

Les codes d'erreur suivants peuvent être renvoyés lors de l'accès au pilote de périphérique via le fichier spécial /dev/ops0 :

Article Descriptif
EACCES Indique que l'accès à l'unité est refusé pour l'une des raisons suivantes:
  • Un utilisateur non privilégié a tenté d'ouvrir l'unité en mode diagnostic.
  • Un utilisateur en mode noyau a tenté un appel en mode utilisateur.
  • Un utilisateur en mode utilisateur a tenté un appel en mode noyau.
EADDRINUSE Indique que l'ID réseau est en cours d'utilisation.
ENCORE UNE FOIS Indique que la file d'attente de transmission est pleine.
EBUSY Indique l'une des informations suivantes:
  • L'unité a déjà été initialisée.
  • Il y a des ouvertures en attente ; impossible de terminer.
  • L'unité est déjà ouverte en mode diagnostic.
  • Le nombre maximal d'ouvertures a été dépassé.
EDÉFAUT Indique que l'adresse spécifiée n'est pas valide.
EINTR Indique qu'un appel système a été interrompu.
EINVAL Indique que le paramètre spécifié n'est pas valide.
EIO Indique une erreur générale. Si une extension a été fournie dans l'appel, des données supplémentaires identifiant la cause de l'erreur se trouvent dans la zone d'état.
TAILLE D'EMSGSIZE Indique que les données sont trop voluminelles pour être intégrées dans la mémoire tampon de réception et qu'aucun paramètre Arg n'a été fourni pour fournir un autre moyen de signaler cette erreur avec un statut CIO_BUF_OVFLW.
ENETDOWN Indique que le réseau est arrêté. L'unité ne peut pas traiter l'écriture.
ENOCONNECT Indique l'une des informations suivantes:
  • L'unité n'est pas démarrée.
  • L'ID processeur n'est pas connecté au sous-système de liaison optique série.
ENODEV Indique que le nombre mineur spécifié n'est pas valide.
ENOMEM Indique que le pilote de périphérique n'a pas pu allouer la mémoire requise.
ENOSPC Indique que la table d'ID réseau est pleine.
EPERM Indique que l'unité est ouverte dans un mode qui ne permet pas une demande d'ouverture en mode diagnostic.