Search notes:

Oracle: X$KSPPI

x$ksppi lists (Init-) parameter names and description.
x$ksppi is interesting because, unlike v$parameter, it also shows so-called hidden parameters.
x$ksppi can be joined to x$ksppcv and x$ksppsv:
select
   par.ksppinm     name,
   par.ksppdesc    description,
   --
   vin.ksppstvl    val_instance,
   vin.ksppstdvl   val_instance_display,
   vin.ksppstdfl   val_instance_default,
   --
   vse.ksppstvl    val_session,
   vse.ksppstdvl   val_session_display,
   vse.ksppstdfl   val_session_default,
   --
   vin.ksppstdf    is_default_instance,
   vin.ksppstvf    val_instance_display,
   vin.ksppstcmnt  update_comment_instance,
   --
   decode(bitand(par.ksppiflg/  256,1), 1, 'yes','no')  is_session_modifiable,
   decode(bitand(par.ksppiflg/65536,3), 1, 'immediate',
                                        2, 'deferred' ,
                                        3, 'immediate',
                                           'no')        is_system_modifable,
   --
   vse.ksppstdf    is_default_session,
   vse.ksppstvf,
   vse.ksppstcmnt  update_comment_session,
   --
   par.ksppilrmflg,
   par.ksppity,
   par.ksppihash
from
   x$ksppi  par                          join
   x$ksppcv vse on par.indx = vse.indx   join
   x$ksppsv vin on par.indx = vin.indx
where
   par.ksppinm like '%spin%'
order by
   lower(replace(par.ksppinm, '_', ''));

TODO

Joining X$KSPPI to X$KSPPCV

Apparently, x$ksppi can be joined to x$ksppcv2 like so:
select
   x.ksppinm    name,
   ksppdesc     description,
   y.kspftctxvl value,
   y.kspftctxdf isdefault,
   decode(bitand(y.kspftctxvf, 7), 1,'MODIFIED',4,'SYSTEM_MOD','FALSE') ismod, decode(bitand(y.kspftctxvf, 2), 2, 'TRUE', 'FALSE') isadj
from
   sys.x$ksppi   x,
   sys.x$ksppcv2 y
where
   x.inst_id   = userenv('instance') and
   y.inst_id   = userenv('instance') and
   x.indx + 1 = y.kspftctxpn
order by
   name;

Namespace ksppar_const_ns

Executing oradebug dumpsga writes (among other things) a section named Namespace ksppar_const_ns (KSP parameter collection) into the trace file.
The number of lines in this section equals the number of records in x$ksppi.
Each line in this section has the form identifer = n where n is a number starting at 1 and increased by one for each line.
It seems that the line of this section corresponds to the record in x$ksppi where indx is n-1.

See also

x$ksppi is selected from in v$system_parameter.
MOS Note 315631.1
fixed tables

Index

Fatal error: Uncaught PDOException: SQLSTATE[HY000]: General error: 8 attempt to write a readonly database in /home/httpd/vhosts/renenyffenegger.ch/php/web-request-database.php:78 Stack trace: #0 /home/httpd/vhosts/renenyffenegger.ch/php/web-request-database.php(78): PDOStatement->execute(Array) #1 /home/httpd/vhosts/renenyffenegger.ch/php/web-request-database.php(30): insert_webrequest_('/notes/developm...', 1758198907, '216.73.216.150', 'Mozilla/5.0 App...', NULL) #2 /home/httpd/vhosts/renenyffenegger.ch/httpsdocs/notes/development/databases/Oracle/architecture/instance/fixed-tables/k/s/p/pi(122): insert_webrequest() #3 {main} thrown in /home/httpd/vhosts/renenyffenegger.ch/php/web-request-database.php on line 78