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:
neveroncepermissions = [Perm] <optional>Perm = {ApplName, Bool}
ApplName = atom()
Bool = boolean()
error_logger = Value <optional>Value is one of:
ttystdio. This is the default option.
{file, FileName}FileName,
where FileName is a string.
falseglobal_groups = [GroupTuple] <optional>GroupTuple = {GroupName, [Node]} | {GroupName, PublishType, [Node]}
GroupName = atom()
PublishType = atom()
Node = atom()
inet_parse_error_log = LogMode <optional>LogMode is one of:
silenterror_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)