~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/translations/it_IT/process/magic-number.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 .. include:: ../disclaimer-ita.rst
  2 
  3 :Original: :ref:`Documentation/staging/magic-number.rst <magicnumbers>`
  4 :Translator: Federico Vaga <federico.vaga@vaga.pv.it>
  5 
  6 .. _it_magicnumbers:
  7 
  8 I numeri magici di Linux
  9 ========================
 10 
 11 Questo documento è un registro dei numeri magici in uso.  Quando
 12 aggiungete un numero magico ad una struttura, dovreste aggiungerlo anche
 13 a questo documento; la cosa migliore è che tutti i numeri magici usati
 14 dalle varie strutture siano unici.
 15 
 16 È **davvero** un'ottima idea proteggere le strutture dati del kernel con
 17 dei numeri magici.  Questo vi permette in fase d'esecuzione di (a) verificare
 18 se una struttura è stata malmenata, o (b) avete passato a una procedura la
 19 struttura errata.  Quest'ultimo è molto utile - particolarmente quando si passa
 20 una struttura dati tramite un puntatore void \*.  Il codice tty, per esempio,
 21 effettua questa operazione con regolarità passando avanti e indietro le
 22 strutture specifiche per driver e discipline.
 23 
 24 Per utilizzare un numero magico, dovete dichiararlo all'inizio della struttura
 25 dati, come di seguito::
 26 
 27         struct tty_ldisc {
 28                 int     magic;
 29                 ...
 30         };
 31 
 32 Per favore, seguite questa direttiva quando aggiungerete migliorie al kernel!
 33 Mi ha risparmiato un numero illimitato di ore di debug, specialmente nei casi
 34 più ostici dove si è andati oltre la dimensione di un vettore e la struttura
 35 dati che lo seguiva in memoria è stata sovrascritta.  Seguendo questa
 36 direttiva, questi casi vengono identificati velocemente e in sicurezza.
 37 
 38 Registro dei cambiamenti::
 39 
 40                                         Theodore Ts'o
 41                                         31 Mar 94
 42 
 43   La tabella magica è aggiornata a Linux 2.1.55.
 44 
 45                                         Michael Chastain
 46                                         <mailto:mec@shout.net>
 47                                         22 Sep 1997
 48 
 49   Ora dovrebbe essere aggiornata a Linux 2.1.112. Dato che
 50   siamo in un momento di congelamento delle funzionalità
 51   (*feature freeze*) è improbabile che qualcosa cambi prima
 52   della versione 2.2.x.  Le righe sono ordinate secondo il
 53   campo numero.
 54 
 55                                         Krzysztof G. Baranowski
 56                                         <mailto: kgb@knm.org.pl>
 57                                         29 Jul 1998
 58 
 59   Aggiornamento della tabella a Linux 2.5.45. Giusti nel congelamento
 60   delle funzionalità ma è comunque possibile che qualche nuovo
 61   numero magico s'intrufoli prima del kernel 2.6.x.
 62 
 63                                         Petr Baudis
 64                                         <pasky@ucw.cz>
 65                                         03 Nov 2002
 66 
 67   Aggiornamento della tabella magica a Linux 2.5.74.
 68 
 69                                         Fabian Frederick
 70                                         <ffrederick@users.sourceforge.net>
 71                                         09 Jul 2003
 72 
 73 
 74 ===================== ================ ======================== ==========================================
 75 Nome magico           Numero           Struttura                File
 76 ===================== ================ ======================== ==========================================
 77 PG_MAGIC              'P'              pg_{read,write}_hdr      ``include/linux/pg.h``
 78 APM_BIOS_MAGIC        0x4101           apm_user                 ``arch/x86/kernel/apm_32.c``
 79 FASYNC_MAGIC          0x4601           fasync_struct            ``include/linux/fs.h``
 80 SLIP_MAGIC            0x5302           slip                     ``drivers/net/slip.h``
 81 BAYCOM_MAGIC          0x19730510       baycom_state             ``drivers/net/baycom_epp.c``
 82 HDLCDRV_MAGIC         0x5ac6e778       hdlcdrv_state            ``include/linux/hdlcdrv.h``
 83 KV_MAGIC              0x5f4b565f       kernel_vars_s            ``arch/mips/include/asm/sn/klkernvars.h``
 84 CODA_MAGIC            0xC0DAC0DA       coda_file_info           ``fs/coda/coda_fs_i.h``
 85 YAM_MAGIC             0xF10A7654       yam_port                 ``drivers/net/hamradio/yam.c``
 86 CCB_MAGIC             0xf2691ad2       ccb                      ``drivers/scsi/ncr53c8xx.c``
 87 QUEUE_MAGIC_FREE      0xf7e1c9a3       queue_entry              ``drivers/scsi/arm/queue.c``
 88 QUEUE_MAGIC_USED      0xf7e1cc33       queue_entry              ``drivers/scsi/arm/queue.c``
 89 NMI_MAGIC             0x48414d4d455201 nmi_s                    ``arch/mips/include/asm/sn/nmi.h``
 90 ===================== ================ ======================== ==========================================

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php