The Kernel application is the first application started, and it is one of two mandatory applications. The Kernel application contains the following services:
application_controller
auth
code
disk_log
erl_boot_server
erl_ddll
error_logger
file
global_group
global_name_server
net_kernel
os
rpc
pg2
timer
user
It is possible to synchronize a set of Erlang nodes. One can specify for a node to wait a specified amount of time for other nodes to become alive.
Two error logger event handlers are defined in the Kernel
application. These are described in error_logger(3)
.
The following configuration parameters are defined for the Kernel application. See application(3) for more information about configuration parameters.
distributed = [Distrib] <optional>
Distrib = {ApplName, Nodes} | {ApplName, Time,
Nodes}
ApplName = atom()
Time = integer() > 0
Nodes
= [node() | {node(), ..., node()}]
dist_auto_connect = Value <optional>
Value
is one of:
never
once
permissions = [Perm] <optional>
Perm = {ApplName, Bool}
ApplName = atom()
Bool = boolean()
error_logger = Value <optional>
Value
is one of:
tty
stdio
. This is the default option.
{file, FileName}
FileName
,
where FileName
is a string.
false
global_groups = [GroupName, [Node]] <optional>
GroupName = atom()
Node = atom()
inet_parse_error_log = LogMode <optional>
LogMode
is one of:
silent
error_logger
messages are generated
when erroneous lines are found and skipped in the various configuration
files.
The default if the variable is not set is that erroneous lines
are reported via the error_logger
.
net_ticktime = TickTime <optional>
net_kernel
tick
time. TickTime
is given in seconds. Once every
TickTime / 4
second, all connected nodes are ticked (if
anything else has been written to a node) and if nothing has
been received from another node within the last four (4) tick
times that node is considered to be down. This ensures that
nodes which are not responding, for reasons such as hardware
errors, are considered to be down.
T
, in which a node that is not responding
is detected, is calculated as: MinT < T < MaxT
where
MinT = TickTime - TickTime / 4 MaxT = TickTime + TickTime / 4
TickTime
is by default 60 (seconds). Thus, 45 < T < 75 seconds.
TickTime
value specified.
sync_nodes_mandatory = [NodeName]
<optional>
must
be alive in order for this node to start
properly. If some node in this list does not start within the
specified time, this node will not start either. If this
parameter is undefined, it defaults to the empty list.sync_nodes_optional = [NodeName] <optional>
can
be alive in
order 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.sync_nodes_timeout = integer() | infinity
<optional>
start_ddll = true | false <optional>
ddll_server
if the parameter is true
(see erl_ddll(3)
). This parameter should be set to true
in an embedded system which uses this service. false
.
start_dist_ac = true | false <optional>
dist_ac
server if the parameter is
true
(see application(3)
). This parameter should
be set to true for systems that use distributed applications.
false
. If this parameter is
undefined, the server is started if the parameter
distributed
is set.
start_boot_server = true | false <optional>
boot_server
if the parameter is
true
(see erl_boot_server(3)
). This parameter
should be set to true in an embedded system which uses this
service. false
.
boot_server_slaves = [SlaveIP] <optional>
start_boot_server
configuration
parameter is true
, this parameter can be used to
initialize boot_server
with a list of slave IP addresses.
SlaveIP = string() | atom | { integer(),integer(),integer(),integer()}
0 <= integer() <=255
. SlaveIP
in
atom, string and tuple form are:'150.236.16.70', "150,236,16,70", {150,236,16,70}
.
[]
.
start_disk_log = true | false <optional>
disk_log_server
if the parameter is
true
(see disk_log(3)
). This parameter should be
set to true in an embedded system which uses this service.
false
.
start_pg2 = true | false <optional>
pg2
server (see pg2(3)
) if the
parameter is true
. This parameter should be set to true
in an embedded system which uses this service. false
.
start_timer = true | false <optional>
timer_server
if the parameter is
true
(see timer(3)
). This parameter should be set
to true in an embedded system which uses this service. false
.
keep_zombies = integer() <optional>
keep_zombies
.
0
.
application(3), auth(3), code(3), disk_log(3), erl_ddll(3), erl_boot_server(3), error_logger(3), file(3), global(3), global_group(3), net_kernel(3), pg2(3), rpc(3), timer(3), user(3)