The Kernel application has all the code necessary to run the Erlang runtime system: file servers, code servers, and so on.
The Kernel application is the first application started. It is mandatory in the sense that the minimal system based on Erlang/OTP consists of Kernel and STDLIB. Kernel contains the following functional areas:
Two standard error logger event handlers are defined in
the Kernel application. These are described in
Asynchronous OS signals may be subscribed to via the Kernel applications event manager
(see
The default handler will halt Erlang and produce a crashdump
with slogan "Received SIGUSR1".
This is equivalent to calling
The default handler will halt Erlang immediately.
This is equivalent to calling
The default handler will terminate Erlang normally.
This is equivalent to calling
Any event handler added to
Hangup detected on controlling terminal or death of controlling process
Quit from keyboard
Abort signal from abort
Timer signal from alarm
Termination signal
User-defined signal 1
User-defined signal 2
Child process stopped or terminated
Stop process
Stop typed at terminal
Setting OS signals are described in
The following configuration parameters are defined for the Kernel
application. For more information about configuration parameters,
see file
When pressing the Help button in a tool such as Debugger,
the help text (an HTML file
If set to a string
If set to a module-function-args tuple,
Specifies which applications that are distributed and on which nodes they are allowed to execute. In this parameter:
The parameter is described in
Specifies when nodes are automatically connected. If
this parameter is not specified, a node is always
automatically connected, for example, when a message is to be sent to
that node.
Connections are never automatically established, they
must be explicitly connected. See
Connections are established automatically, but only
once per node. If a node goes down, it must thereafter be
explicitly connected. See
Specifies the default permission for applications when they are started. In this parameter:
Permissions are described in
Installs the standard event handler, which prints error
reports to
Installs the standard event handler, which prints error
reports to file
No standard event handler is installed, but
the initial, primitive event handler is kept, printing
raw event messages to
Error logging is turned off.
Can be used to limit the size of the formatted output from the error logger event handlers.
This configuration parameter was introduced in OTP 18.1 and is experimental. Based on user feedback, it can be changed or improved in future releases, for example, to gain better control over how to limit the size of the formatted output. We have no plans to remove this new feature entirely, unless it turns out to be useless.
A reasonable starting value for
Defines global groups, see
Specifies default options for
Specifies default options for
If the host of an Erlang node has many network interfaces,
this parameter specifies which one to listen on. For the type definition
of
Defines the
Defines a list of extra socket options to be used when opening the
listening socket for a distributed Erlang node.
See
Defines a list of extra socket options to be used when connecting to
other distributed Erlang nodes.
See
If set, no
The name (string) of an Inet user configuration file. For details,
see section
Notice that this value does not limit the total connection setup time, but rather each individual network operation during the connection setup and handshake.
Specifies the
The time
MinT = TickTime - TickTime / 4
MaxT = TickTime + TickTime / 4
Notice that all communicating nodes are to have the same
Normally, a terminating node is detected immediately.
Specifies the time
Specifies which other nodes that must be alive
for this node to start properly. If some node in the list
does not start within the specified time, this node does not
start either. If this parameter is undefined, it defaults to
Specifies which other nodes that can be alive for this node to start properly. If some node in this list does not start within the specified time, this node starts anyway. If this parameter is undefined, it defaults to the empty list.
Specifies the time (in milliseconds) that this node
waits for the mandatory and optional nodes to start. If
this parameter is undefined, no node synchronization is
performed. This option ensures that
Starts the
Defaults to
Starts the
Defaults to
If configuration parameter
where
Examples of
Defaults to
Starts the
Defaults to
Starts the
Defaults to
Starts the
Defaults to
Where:
Sets a function that
Where:
Specifies a list of rules for use by