Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion:
[Actualités]
Test Bridge Constructor Studio (PS5) - Construisez des ponts désormais sans bud...
[Actualités]
Mario Tennis Fever : Rendez-vous sur le court le 12 février sur Switch 2
[Actualités]
Finies les photos de nus non désirées. La Grande-Bretagne transfère la respon...
[Actualités]
Présentation du mini PC Acer Veriton RA100 SFF
[Actualités]
Les premiers routeurs Wi-Fi 8 ont été dévoilés au CES 2026.
[Actualités]
Corsair a dévoilé un clavier doté d'un Stream Deck intégré.
[Actualités]
Razer a lancé un PC dédié au travail avec l'IA.
[Actualités]
"South Park : Les créations de Chaos" débarque dans Fortnite !
[Actualités]
Voici la première batterie à semi-conducteurs : elle promet de révolutionner ...
[Actualités]
L'Iran coupe internet. Les manifestants se retrouvent sans moyen de communication.
[Articles]
Avatar: Frontiers of Pandora - D'entre les Cendres
[Articles]
Bridge Constructor Studio
[Articles]
Le Loup des Cordeliers
[Articles]
Immortal Hounds tome 7
[Articles]
Dungeons & Dragons: Dragonshard
[Articles]
Le Sympathisant
[Articles]
One Piece Odyssey
[Articles]
L'oubliée du radeau de la Méduse
[Articles]
Truck Driver: The Dutch Connection
[Articles]
School of Villains tome 2
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] proc_dir_entry, proc_register, proc_register_dynamic, proc_unregister - ajouter des entrées dans le système de fichiers /proc. [size=18] [b]Résumé[/b] [/size] [b]#include
[/b] [b][i]int proc_register(%struct proc_dir_entry * parent , struct proc_dir_entry * child);[/i][/b] [b][i]int proc_unregister(%struct proc_dir_entry * parent , int inode);[/i][/b] [b][i]int proc_register_dynamic(%struct proc_dir_entry * parent , struct proc_dir_entry * child);[/i][/b] [size=18] [b]Description[/b] [/size] Les fonctions [b]proc_register[/b] ajoutent une entrée de fichier ou de répertoire au système de fichier virtuel /proc. Chaque entrée est associée à une routine chargée de gérer les entrées-sorties sur cette inode. La structure [b]proc_dir_entry[/b] est définie comme : [cpp] struct proc_dir_entry { unsigned short low_ino; unsigned short namelen; const char *name; mode_t mode; nlink_t nlink; uid_t uid; gid_t gid; unsigned long size; struct inode_operations * ops; int (*get_info)(char *buffer, char **start, off_t offset, int length, int unused); void (*fill_inode)(struct inode *); struct proc_dir_entry *next, *parent, *subdir; void *data; }; [/cpp] low_ino 8 [table][row][col] [/col][col]Le numéro d'inode de cette entrée de répertoire. Pour [b]proc_register ,[/b] ce nombre doit être unique dans le système de fichiers /proc. Des valeurs sont définies dans [b]
.[/b] Pour [b]proc_register_dynamic ,[/b] le numéro d'inode est dynamiquement choisi.[/col][/row][/table] namelen [table][row][col] [/col][col]La longueur du nom, sans compter le caractère nul terminal.[/col][/row][/table] name [table][row][col] [/col][col]Le nom de l'inode.[/col][/row][/table] mode [table][row][col] [/col][col].ne 3 Le type et les droits (permissions) sur l'inode. Voir [b]
.[/b][/col][/row][/table] nlink [table][row][col] [/col][col]Le nombre de liens au noeud. S'initialise à 2 si le mode inclut S_IFDIR, sinon 1 .[/col][/row][/table] uid [table][row][col] [/col][col]L'UID (User ID) du propriétaire de l'inode, normalement 0.[/col][/row][/table] gid [table][row][col] [/col][col]Le GD (Group ID) du propriétaire de l'inode, normalement 0.[/col][/row][/table] size [table][row][col] [/col][col]Taille de l'inode telle qu'elle apparaîtra dans les listings retournés par stat. [b]stat .[/b] À moins que vous n'ayez réellement besoin d'une taille, ce champ doit être à zéro.[/col][/row][/table] ops [table][row][col] [/col][col]Définit les opérations réalisables sur l'inode. Pour un répertoire, utiliser [i]&proc_dir_inode_operations[/i] à moins qu'un comportement spécial doive être défini. Pour un inode leaf, mettez normalement NULL.[/col][/row][/table] get_info [table][row][col] [/col][col]Si définie, cette procédure sera appelée à chaque fois que l'inode sera lue. Normalement initialisée à NULL pour un répertoire. [b]NOTE :[/b] Si vous retournez de grandes quantités de données, la procédure doit retourner les données par morceaux et se préparer au prochain appel en positionnant la variable [i]offset[/i] Voir [i]ip_masq_procinfo[/i] pour un tel exemple.[/col][/row][/table] fill_inode [table][row][col] [/col][col]Remplit dynamiquement les caractéristiques de l'inode lors des opérations sur le répertoire. Devrait être à NULL. Voir [i]proc_pid_fill_inode[/i] pour un exemple.[/col][/row][/table] "next, parent, subdir [table][row][col] [/col][col]Mis à jour par les routines de /proc. À initialiser à NULL.[/col][/row][/table] data [table][row][col] [/col][col]Pointeur utilisé par les routines de /proc pour passer des données locales. Vous pouvez en faire ce que vous voulez quand vous appellez [b]proc_register ,[/b] normalement NULL. Ce pointeur est copié dans le champ [i]u.ip_generic [/i] de l'inode par [i]proc_get_inode[/i] et est donc disponible pour toutes les routines de /proc à qui l'on passe une inode.[/col][/row][/table] [b]proc_register[/b] ajoute l'inode [b]child[/b] en tant que sous-inode de [b]parent .[/b] [b]proc_register_dynamic[/b] assigne dynamiquement un numéro d'inode puis ajoute l'inode [b]child[/b] comme sous-inode de [b]parent .[/b] [b]proc_unregister[/b] examine la liste des sous-inodes de [b]parent[/b] pour rechercher le numéro d'inode [b]inode[/b] particulier et détruire l'entrée correspondante. [size=18] [b]Valeur renvoyée[/b] [/size] [b]proc_register[/b] retourne toujours 0. [b]proc_register_dynamic[/b] .ne 2 retourne 0 si tout se passe normalement ou [b]-EAGAIN[/b] s'il est impossible d'allouer dynamiquement un numéro d'inode. [b]proc_unregister[/b] .ne 2 retourne 0 si tout se passe normalement ou [b]-EINVAL[/b] si l'inode n'est pas trouvée. [size=18] [b]Voir aussi[/b] [/size] [b]proc_net_register (9), proc_net_unregister (9), proc_scsi_register (9), proc_scsi_unregister (9), stat (2).[/b] [b][Note du traducteur][/b] Jeter un coup d'oeil à proc"(5) "n'est pas une mauvaise idée. [size=18] [b]Auteur[/b] [/size] Keith Owens
[size=18] [b]Traducteur[/b] [/size] [i]Thierry Vignaud < tvignaud@mandrakesoft.com >, 1999[/i] [size=18] [b]Bugs[/b] [/size] L'unicité des numéros d'inode dans /proc est supposée, mais rien n'est fait pour l'assurer réellement... Il est possible que deux inodes aient le même numéro.
Fichier
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Informations
Besoin d’avis sur l’UX de mon mini-projet web (et plus globalement sur ce qui vous rebute sur un site) ?
Software
problème sur windows 10
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Hardware
nVidia Shield Android TV
Actualités
-
Archives
Jeux Vidéos
Test Bridge Constructor Studio (PS5) - Construisez des ponts désormais sans budget limité
Jeux Vidéos
Mario Tennis Fever : Rendez-vous sur le court le 12 février sur Switch 2
Droit
Finies les photos de nus non désirées. La Grande-Bretagne transfère la responsabilité des victimes aux plateformes.
Matériel
Présentation du mini PC Acer Veriton RA100 SFF
Internet
Les premiers routeurs Wi-Fi 8 ont été dévoilés au CES 2026.
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2026
Akretio
SPRL - Generated via
Kelare
The Akretio Network:
Akretio
-
Freedelity
-
KelCommerce
-
Votre publicité sur informaticien.be ?