fp_open Kernel Service per i dispositivi DLC (Data Link Control)
Finalità
Consente al kernel di aprire il gestore del dispositivo GDLC (generic data link control) dal suo nome dispositivo.
Sintassi
#include <sys/gdlextcb.h>
#include <fcntl.h>
fp_open (path, oflags, cmode, ext, segflag, fpp)
Parametri
| Elemento | Descrizione |
|---|---|
| percorso | Consiste in una stringa di caratteri contenente il nome del file speciale /dev del gestore di dispositivi GDLC, con l'aggiunta del nome del gestore del dispositivo di comunicazione. Il formato viene mostrato nel seguente esempio:
|
| obandiere | Specifica un valore per impostare l'indicatore di stato del file. Il gestore del dispositivo GDLC ignora tutti ma i seguenti valori:
|
| cmode | Specifica il parametro della modalità O_CREAT. Questo viene ignorato da GDLC. |
| ext | Specifica il parametro di servizio del kernel esteso. È un puntatore alla struttura I/O estesa dlc_open_ext per le subroutine aperte. L'argomento per questo parametro deve essere nello spazio del kernel. |
| segflag | Specifica il flag di segmento che indica dove si trova il parametro percorso :
|
| fpp | Specifica il puntatore del file restituito. Questo parametro viene passato come riferimento e aggiornato dal sottosistema di I/O del file come puntatore al file per questa subroutine aperta. |
Descrizione
Il servizio del kernel fp_open consente all'utente del kernel di aprire un gestore di dispositivi GDLC specificando i nomi speciali dei file del DLC e del gestore di dispositivi di comunicazione. Dal momento che il gestore del dispositivo GDLC è multiplex, più di un processo può aprirlo (o lo stesso processo più volte) e avere ancora identificazioni di canale uniche.
Ogni apertura trasporta il nome di file speciale del gestore delle comunicazioni in modo che il DLC sappia quale porta trasferire i dati.
L'utente del kernel deve inoltre fornire indirizzi di ingresso funzionali al fine di ottenere dati di ricezione e condizioni di eccezione. Ogni GDLC supporta il servizio del kernel fp_open tramite il suo punto di ingresso dlcopen. Il servizio del kernel fp_open può essere chiamato solo dall'ambiente del processo. "Utilizzo dei servizi speciali del kernel GDLC" in Concetti di programmazione delle comunicazioniAIX® versione 6.1 fornisce ulteriori informazioni.
Valori di ritorno
Al completamento di successo, questo servizio restituisce un valore di 0 e un puntatore di file valido nel parametro fpp .
| Elemento | Descrizione |
|---|---|
| ECHILD | Indica che il servizio non può creare un processo kernel. |
| EINVALLO | Indica un valore non valido. |
| ENODEV | Indica che non è presente alcun gestore del dispositivo. |
| ENOMEM | Indica risorse insufficienti per soddisfare l'apertura. |
| EFAULT | Indica che il servizio del kernel, come il servizio copyin o initp , è fallito. |
Questi valori di ritorno sono definiti nel file /usr/include/sys/errno.h.