diff options
Diffstat (limited to 'system')
25 files changed, 120 insertions, 270 deletions
diff --git a/system/README b/system/README index b8ff18119d..b1e18ef55c 100644 --- a/system/README +++ b/system/README @@ -51,10 +51,9 @@ Release of Erlang 5.9/OTP R15B ------------------------------- 3.1 The platform VxWorks is discontinued in the sense that only the - libraries (erl_interface and ic's libraries) are supported. Running - the Erlang emulator on VxWorks might still possible but it's no longer - maintained. The VxWorks release is still packaged as a full release, - but no support will be available for anything but the communication libraries. + libraries (erl_interface and ic's libraries) are supported. The VxWorks + release is still packaged as a full release, but no support will be + available for anything but the communication libraries. 4 NOTES ABOUT THE LINUX VERSIONS ----------------------------- diff --git a/system/doc/design_principles/Makefile b/system/doc/design_principles/Makefile index a9d4665ee4..73e1e2c6f7 100644 --- a/system/doc/design_principles/Makefile +++ b/system/doc/design_principles/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1997-2011. All Rights Reserved. +# Copyright Ericsson AB 1997-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/efficiency_guide/Makefile b/system/doc/efficiency_guide/Makefile index 1fd7b36453..655531f42b 100644 --- a/system/doc/efficiency_guide/Makefile +++ b/system/doc/efficiency_guide/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 2001-2011. All Rights Reserved. +# Copyright Ericsson AB 2001-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/efficiency_guide/advanced.xml b/system/doc/efficiency_guide/advanced.xml index 821175bb09..ac35a37bc4 100644 --- a/system/doc/efficiency_guide/advanced.xml +++ b/system/doc/efficiency_guide/advanced.xml @@ -123,12 +123,11 @@ On 64-bit architectures: 4 words for a reference from the current local node, an <tag><em>Processes</em></tag> <item> <p>The maximum number of simultaneously alive Erlang processes is - by default 32768. This limit can be raised up to at most 268435456 - processes at startup (see documentation of the system flag - <seealso marker="erts:erl#max_processes">+P</seealso> in the - <seealso marker="erts:erl">erl(1)</seealso> documentation). - The maximum limit of 268435456 processes will at least on a 32-bit - architecture be impossible to reach due to memory shortage.</p> + by default 32768. This limit can be configured at startup, + for more information see the + <seealso marker="erts:erl#max_processes"><c>+P</c></seealso> + command line flag of + <seealso marker="erts:erl"><c>erl(1)</c></seealso>.</p> </item> <tag><em>Distributed nodes</em></tag> <item> @@ -184,13 +183,12 @@ On 64-bit architectures: 4 words for a reference from the current local node, an <tag><em>Open ports</em></tag> <item> <marker id="ports"></marker> - <p>The maximum number of simultaneously open Erlang ports is - by default 1024. This limit can be raised up to at most 268435456 - at startup (see environment variable - <seealso marker="erts:erlang#ERL_MAX_PORTS">ERL_MAX_PORTS</seealso> - in <seealso marker="erts:erlang">erlang(3)</seealso>) - The maximum limit of 268435456 open ports will at least on a 32-bit - architecture be impossible to reach due to memory shortage.</p> + <p>The maximum number of simultaneously oper Erlang ports is + often by default 16384. This limit can be configured at startup, + for more information see the + <seealso marker="erts:erl#max_ports"><c>+Q</c></seealso> + command line flag of + <seealso marker="erts:erl"><c>erl(1)</c></seealso>.</p> </item> <tag><em>Open files, and sockets</em></tag> <item> <marker id="files_sockets"></marker> diff --git a/system/doc/efficiency_guide/drivers.xml b/system/doc/efficiency_guide/drivers.xml index fec68ca059..b10595ea4d 100644 --- a/system/doc/efficiency_guide/drivers.xml +++ b/system/doc/efficiency_guide/drivers.xml @@ -105,9 +105,9 @@ client_port() -> <p>If you know that the binaries you return are always small, you should use driver API calls that do not require a pre-allocated binary, for instance - <seealso marker="erts:erl_driver#int driver_output-3">driver_output()</seealso> + <seealso marker="erts:erl_driver#driver_output">driver_output()</seealso> or - <seealso marker="erts:erl_driver#int driver_output_term-3">driver_output_term()</seealso> + <seealso marker="erts:erl_driver#erl_drv_output_term">erl_drv_output_term()</seealso> using the <c>ERL_DRV_BUF2BINARY</c> format, to allow the run-time to construct a heap binary.</p> @@ -120,7 +120,7 @@ client_port() -> the driver to an Erlang process, the driver must first allocate the binary and then send it to an Erlang process in some way.</p> - <p>Use <seealso marker="erts:erl_driver#ErlDrvBinary* driver_alloc_binary-1">driver_alloc_binary()</seealso> to allocate a binary.</p> + <p>Use <seealso marker="erts:erl_driver#driver_alloc_binary">driver_alloc_binary()</seealso> to allocate a binary.</p> <p>There are several ways to send a binary created with <c>driver_alloc_binary()</c>.</p> @@ -128,17 +128,17 @@ client_port() -> <list type="bulleted"> <item><p>From the <c>control</c> callback, a binary can be returned provided that - <seealso marker="erts:erl_driver#void set_port_control_flags-2">set_port_control()</seealso> + <seealso marker="erts:erl_driver#set_port_control_flags">set_port_control_flags()</seealso> has been called with the flag value <c>PORT_CONTROL_FLAG_BINARY</c>.</p> </item> <item><p>A single binary can be sent with - <seealso marker="erts:erl_driver#int driver_output_binary-6">driver_output_binary()</seealso>.</p></item> + <seealso marker="erts:erl_driver#driver_output_binary">driver_output_binary()</seealso>.</p></item> <item><p>Using - <seealso marker="erts:erl_driver#int driver_output_term-3">driver_output_term()</seealso> + <seealso marker="erts:erl_driver#erl_drv_output_term">erl_drv_output_term()</seealso> or - <seealso marker="erts:erl_driver#int driver_send_term-4">driver_send_term()</seealso>, + <seealso marker="erts:erl_driver#erl_drv_send_term">erl_drv_send_term()</seealso>, a binary can be included in an Erlang term.</p> </item> </list> diff --git a/system/doc/embedded/Makefile b/system/doc/embedded/Makefile index 825fb23cfe..2f78d7ddcd 100644 --- a/system/doc/embedded/Makefile +++ b/system/doc/embedded/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1997-2011. All Rights Reserved. +# Copyright Ericsson AB 1997-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/embedded/part.xml b/system/doc/embedded/part.xml index abedce46d6..d96a94a1a0 100644 --- a/system/doc/embedded/part.xml +++ b/system/doc/embedded/part.xml @@ -45,6 +45,5 @@ </description> <xi:include href="embedded_solaris.xml"/> <xi:include href="embedded_nt.xml"/> - <xi:include href="vxworks.xml"/> </part> diff --git a/system/doc/embedded/vxworks.xml b/system/doc/embedded/vxworks.xml deleted file mode 100644 index 52143a42e3..0000000000 --- a/system/doc/embedded/vxworks.xml +++ /dev/null @@ -1,193 +0,0 @@ -<?xml version="1.0" encoding="latin1" ?> -<!DOCTYPE chapter SYSTEM "chapter.dtd"> - -<chapter> - <header> - <copyright> - <year>1997</year><year>2009</year> - <holder>Ericsson AB. All Rights Reserved.</holder> - </copyright> - <legalnotice> - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See - the License for the specific language governing rights and limitations - under the License. - - </legalnotice> - - <title>VxWorks</title> - <prepared>Patrik Winroth</prepared> - <responsible></responsible> - <docno></docno> - <approved></approved> - <checked></checked> - <date>2000-10-17</date> - <rev></rev> - <file>vxworks.xml</file> - </header> - <p>This chapter describes the OS specific parts of OTP which relate - to VxWorks. - </p> - - <section> - <title>Introduction</title> - <p>The Erlang/OTP distribution for VxWorks is limited to what - Switchboard requires (Switchboard is a general purpose - switching hardware developed by Ericsson). - </p> - <p>Please consult the README file, included at root level in the - installation, for latest information on the distribution. - </p> - </section> - - <section> - <title>Memory Usage</title> - <p>Memory required is 32 Mbyte. - </p> - </section> - - <section> - <title>Disk Usage</title> - <p>The disk space required is 22 Mbyte, the documentation included. - </p> - </section> - - <section> - <title>Installation</title> - <p>OTP/VxWorks is supplied in a distribution file named - <c><![CDATA[<PREFIX>.tar.gz]]></c>; i.e. a tar archive that is - compressed with gzip. <c><![CDATA[<PREFIX>]]></c> represents the - name of the release, - e.g. <c>otp_LXA12345_vxworks_cpu32_R42A</c>. Assuming you are - installing to a Solaris file system, the installation is - performed by following these steps: < - </p> - <p></p> - <list type="bulleted"> - <item>Change to the directory where you want to install - OTP/VxWorks (<c><![CDATA[<ROOTDIR>]]></c>): <c><![CDATA[cd <ROOTDIR>]]></c></item> - <item>Make a directory to put OTP/VxWorks in: <c>mkdir otp_vxworks_cpu32</c> (or whatever you want to call it)</item> - <item>Change directory to the newly created one: <c>cd otp_vxworks_cpu32</c></item> - <item>Copy the distribution file there from where it is located - (<c><![CDATA[<RELDIR>]]></c>): <c><![CDATA[cp <RELDIR>/<PREFIX>.tar.gz .]]></c></item> - <item>Unzip the distribution file: <c><![CDATA[gunzip <PREFIX>.tar.gz]]></c></item> - <item>Untar <c><![CDATA[<PREFIX>.tar]]></c>: <c><![CDATA[tar xvf <PREFIX>.tar]]></c></item> - <item>Create a bin directory: <c>mkdir bin</c></item> - <item>Copy the VxWorks Erlang/OTP start-up script to the bin directory: - <c>cp erts-Vsn/bin/erl bin/.</c></item> - <item>Copy the example start scripts to the bin directory: - <c>cp releases/R42A/*.boot bin/.</c></item> - </list> - <p>If you use VxWorks nfs mounting facility to mount the Solaris - file system, this installation may be directly used. An other - possibility is to copy the installation to a local VxWorks DOS - file system, from where it is used. - </p> - </section> - - <section> - <title>OS Specific Functionality/Information</title> - <p>There are a couple of files that are unique to the VxWorks - distribution of Erlang/OTP, these files are described here. - </p> - <list type="bulleted"> - <item>README - this files has some information on VxWorks - specifics that you are advised to consult. This includes the - latest information on what parts of OTP are included in the - VxWorks distribution of Erlang/OTP. If you want us to - include more parts, please contact us to discuss - this.</item> - <item>erts-Vsn/bin/resolv.conf - A resolver configuration EXAMPLE file. - You have to edit this file.</item> - <item>erts-Vsn/bin/erl - This is an EXAMPLE start script for VxWorks. - You have to edit this file to suit your needs.</item> - <item>erts-Vsn/bin/erl_io - One possible solution to the problem - of competing Erlang and VxWorks shell. Contains the function - 'start_erl' called by the erl script. Also contains the - function 'to_erl' to be used when connecting to the Erlang - shell from VxWorks' shell.</item> - <item>erts-Vsn/bin/erl_exec - Rearranges command line arguments - and starts Erlang.</item> - <item>erts-Vsn/bin/vxcall - Allows spawning of standard VxWorks - shell functions (which is just about any function in the - system...) from open_port/2. E.g. open_port({spawn, 'vxcall - func arg1 arg2'}, []) will cause the output that 'func arg1, - arg2' would have given in the shell to be received from the - port.</item> - <item>erts-Vsn/bin/rdate - Set the time from a networked host, - like the SunOS command. Nothing Erlang-specific, but nice - if you want date/0 and time/0 to give meaningful values (you - also need a TIMEZONE environment setting if GMT isn't - acceptable). For example: <c>putenv "TIMEZONE=CET::-60:033002:102603"</c> sets central european - time.</item> - <item>erts-Vsn/src - Contains source for the above files, and - additionally config.c, driver.h, preload.c and - reclaim.h. Reclaim.h defines the interface to a simple - mechanism for "resource reclamation" that is part of the - Erlang runtime system - may be useful to "port program" writers (and - possibly others). Take careful note of the caveats listed in - the file!</item> - </list> - </section> - - <section> - <title>Starting Erlang</title> - <p>Start (and restart) of the system depends on what file system - is used. To be able to start the system from a nfs mounted - file system you can use VxWorks start script facility to run a - start script similar to the example below. Note that the - Erlang/OTP start-up script is run at the end of this script. - </p> - <code type="none"><![CDATA[ -# start.script v1.0 1997/09/08 patrik -# -# File name: start.script -# Purpose: Starting the VxWorks/cpu32 erlang/OTP -# Author: [email protected] -# Resides in: ~tornado/wind/target/config/ads360/ - -# -# Set shell prompt -# -shellPromptSet("sauron-> ") - -# -# Set default gateway -# -hostAdd "router-20","150.236.20.251" -routeAdd "0","router-20" - -# -# Mount /home from gandalf -# -hostAdd "gandalf","150.236.20.16" -usergroup=10 -nfsAuthUnixSet("gandalf", 452, 10, 1, &usergroup) -nfsMount("gandalf", "/export/home", "/home") - -# -# Load and run rdate.o to set correct date on the target -# -ld < /home/gandalf/tornado/wind/target/config/ads360/rdate.o -rdate("gandalf") - -# -# Setup timezone information (Central European time) -# -putenv "TIMEZONE=CET::-60:033002:102603" - -# -# Run the Erlang/OTP start script -# -cd "/home/gandalf/tornado/wind/target/erlang_cpu32_R42A/bin" -<erl - ]]></code> - </section> -</chapter> - diff --git a/system/doc/embedded/xmlfiles.mk b/system/doc/embedded/xmlfiles.mk index 2bdc34ae28..0001a55b9a 100644 --- a/system/doc/embedded/xmlfiles.mk +++ b/system/doc/embedded/xmlfiles.mk @@ -18,5 +18,4 @@ # EMBEDDED_CHAPTER_FILES = \ embedded_solaris.xml \ - embedded_nt.xml \ - vxworks.xml + embedded_nt.xml diff --git a/system/doc/getting_started/Makefile b/system/doc/getting_started/Makefile index 972a51d3a5..ce53256b16 100644 --- a/system/doc/getting_started/Makefile +++ b/system/doc/getting_started/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1996-2011. All Rights Reserved. +# Copyright Ericsson AB 1996-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/installation_guide/Makefile b/system/doc/installation_guide/Makefile index 4636650570..6923f52d8a 100644 --- a/system/doc/installation_guide/Makefile +++ b/system/doc/installation_guide/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1996-2010. All Rights Reserved. +# Copyright Ericsson AB 1996-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in @@ -58,7 +58,8 @@ XML_FILES = \ GENERATED_XML_FILES = \ INSTALL.xml \ INSTALL-CROSS.xml \ - INSTALL-WIN32.xml + INSTALL-WIN32.xml \ + MARKDOWN.xml # ---------------------------------------------------- @@ -73,7 +74,8 @@ REDIRECT_HTML_DIR = $(HTMLDIR)/source REDIRECT_HTML_FILES = \ $(REDIRECT_HTML_DIR)/INSTALL.html \ $(REDIRECT_HTML_DIR)/INSTALL-CROSS.html \ - $(REDIRECT_HTML_DIR)/INSTALL-WIN32.html + $(REDIRECT_HTML_DIR)/INSTALL-WIN32.html \ + $(REDIRECT_HTML_DIR)/MARKDOWN.html # ---------------------------------------------------- # FLAGS @@ -85,7 +87,7 @@ DVIPS_FLAGS += # Targets # ---------------------------------------------------- -%.xml: $(ERL_TOP)/%.md $(ERL_TOP)/make/emd2exml +%.xml: $(ERL_TOP)/HOWTO/%.md $(ERL_TOP)/make/emd2exml $(ERL_TOP)/make/emd2exml $< $@ $(REDIRECT_HTML_DIR)/%.html: Makefile diff --git a/system/doc/installation_guide/part.xml b/system/doc/installation_guide/part.xml index fceacdd8f6..648beb0afd 100644 --- a/system/doc/installation_guide/part.xml +++ b/system/doc/installation_guide/part.xml @@ -36,5 +36,5 @@ <xi:include href="INSTALL.xml"/> <xi:include href="INSTALL-CROSS.xml"/> <xi:include href="INSTALL-WIN32.xml"/> -</part> - + <xi:include href="MARKDOWN.xml"/> +</part>
\ No newline at end of file diff --git a/system/doc/installation_guide/xmlfiles.mk b/system/doc/installation_guide/xmlfiles.mk index dee67b3c70..8ea2b296aa 100644 --- a/system/doc/installation_guide/xmlfiles.mk +++ b/system/doc/installation_guide/xmlfiles.mk @@ -21,4 +21,5 @@ INST_GUIDE_CHAPTER_FILES = \ verification.xml \ INSTALL.xml \ INSTALL-CROSS.xml \ - INSTALL-WIN32.xml + INSTALL-WIN32.xml \ + MARKDOWN.xml diff --git a/system/doc/oam/Makefile b/system/doc/oam/Makefile index f459f4349f..ca07d82f75 100644 --- a/system/doc/oam/Makefile +++ b/system/doc/oam/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1997-2011. All Rights Reserved. +# Copyright Ericsson AB 1997-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/programming_examples/Makefile b/system/doc/programming_examples/Makefile index fcc51e3b18..41c27ed0dd 100644 --- a/system/doc/programming_examples/Makefile +++ b/system/doc/programming_examples/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 2003-2011. All Rights Reserved. +# Copyright Ericsson AB 2003-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/reference_manual/Makefile b/system/doc/reference_manual/Makefile index 87a477d14e..dbdfea2162 100644 --- a/system/doc/reference_manual/Makefile +++ b/system/doc/reference_manual/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 2003-2011. All Rights Reserved. +# Copyright Ericsson AB 2003-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/reference_manual/expressions.xml b/system/doc/reference_manual/expressions.xml index d564b20ca6..357f89f731 100644 --- a/system/doc/reference_manual/expressions.xml +++ b/system/doc/reference_manual/expressions.xml @@ -236,10 +236,6 @@ Fun1 = fun(X) -> X+1 end Fun1(3) => 4 -Fun2 = {lists,append} -Fun2([1,2], [3,4]) -=> [1,2,3,4] - fun lists:append/2([1,2], [3,4]) => [1,2,3,4]</code> @@ -1000,13 +996,6 @@ fun (Arg1,...,ArgN) -> Name(Arg1,...,ArgN) end</pre> <c>Module</c>. A fun defined in this way will not be dependent on the code for module in which it is defined. </p> - <p>When applied to a number N of arguments, a tuple - <c>{Module,FunctionName}</c> is interpreted as a fun, referring - to the function <c>FunctionName</c> with arity N in the module - <c>Module</c>. The function must be exported. - <em>This usage is deprecated.</em> Use <c>fun Module:Name/Arity</c> - instead. - See <seealso marker="#calls">Function Calls</seealso> for an example.</p> <p>More examples can be found in <em>Programming Examples</em>.</p> </section> diff --git a/system/doc/reference_manual/introduction.xml b/system/doc/reference_manual/introduction.xml index 3dac5cfe13..7737c34469 100644 --- a/system/doc/reference_manual/introduction.xml +++ b/system/doc/reference_manual/introduction.xml @@ -4,7 +4,7 @@ <chapter> <header> <copyright> - <year>2003</year><year>2009</year> + <year>2003</year><year>2012</year> <holder>Ericsson AB. All Rights Reserved.</holder> </copyright> <legalnotice> @@ -150,6 +150,17 @@ </row> <tcaption>Character Classes.</tcaption> </table> + <p>In Erlang/OTP R16 the syntax of Erlang tokens was extended to + handle Unicode. To begin with the support is limited to strings, + but Erlang/OTP R18 is expected to handle Unicode atoms as well. + More about the usage of Unicode in Erlang source files can be + found in <seealso + marker="stdlib:unicode_usage#unicode_in_erlang">STDLIB's User'S + Guide</seealso>. The default encoding for Erlang source files + is still Latin-1, but in Erlang/OTP R17 the default encoding + will be UTF-8. The details on how to state the encoding of an + Erlang source file can be found in <seealso + marker="stdlib:epp#encoding">epp(3)</seealso>.</p> </section> </chapter> diff --git a/system/doc/reference_manual/ports.xml b/system/doc/reference_manual/ports.xml index 4847dd67cd..c4e4ef1d35 100644 --- a/system/doc/reference_manual/ports.xml +++ b/system/doc/reference_manual/ports.xml @@ -87,8 +87,14 @@ of bytes, the option <c>binary</c> must be included.</p> <p>The port owner <c>Pid</c> can communicate with the port <c>Port</c> by sending and receiving messages. (In fact, any - process can send the messages to the port, but the messages from - the port always go to the port owner).</p> + process can send the messages to the port, but the port owner must + be identified in the message).</p> + <p>As of OTP-R16 messages sent to ports are delivered truly + asynchronously. The underlying implementation previously + delivered messages to ports synchronously. Message passing has + however always been documented as an asynchronous operation, so + this should not be an issue for an Erlang program communicating + with ports, unless false assumptions about ports has been made.</p> <p>Below, <c>Data</c> must be an I/O list. An I/O list is a binary or a (possibly deep) list of binaries or integers in the range 0..255.</p> @@ -127,8 +133,7 @@ <tcaption>Messages Received From a Port.</tcaption> </table> <p>Instead of sending and receiving messages, there are also a - number of BIFs that can be used. These can be called by any - process, not only the port owner.</p> + number of BIFs that can be used.</p> <table> <row> <cell align="left" valign="middle"><c>port_command(Port,Data)</c></cell> diff --git a/system/doc/system_architecture_intro/Makefile b/system/doc/system_architecture_intro/Makefile index 2de67473c1..0b5322de4f 100644 --- a/system/doc/system_architecture_intro/Makefile +++ b/system/doc/system_architecture_intro/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1997-2011. All Rights Reserved. +# Copyright Ericsson AB 1997-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/system_principles/Makefile b/system/doc/system_principles/Makefile index 4b7fc8f177..b1c0fc3ddd 100644 --- a/system/doc/system_principles/Makefile +++ b/system/doc/system_principles/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1996-2011. All Rights Reserved. +# Copyright Ericsson AB 1996-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/top/Makefile b/system/doc/top/Makefile index bbdb4d7055..673ba44c94 100644 --- a/system/doc/top/Makefile +++ b/system/doc/top/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 1999-2011. All Rights Reserved. +# Copyright Ericsson AB 1999-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in @@ -163,17 +163,34 @@ $(MAN_INDEX): $(MAN_INDEX_SCRIPT) $(HTMLDIR)/highlights.html: highlights.xml date=`date +"%B %e %Y"`; \ - $(XSLTPROC) --output $(@) --stringparam docgen "$(DOCGEN)" --stringparam topdocdir "$(TOPDOCDIR)" \ - --stringparam pdfdir "$(PDFREFDIR)" --stringparam gendate "$$date" --stringparam appname "$(APPLICATION)" \ - --stringparam appver "$(VSN)" -path $(DOCGEN)/priv/dtd -path $(DOCGEN)/priv/dtd_html_entities \ + $(XSLTPROC) --output $(@) \ + --stringparam docgen "$(DOCGEN)" \ + --stringparam topdocdir "$(TOPDOCDIR)" \ + --stringparam pdfdir "$(PDFREFDIR)" \ + --stringparam gendate "$$date" \ + --stringparam appname "$(APPLICATION)" \ + --stringparam appver "$(VSN)" \ + --stringparam stylesheet "$(CSS_FILE)" \ + --stringparam winprefix "$(WINPREFIX)" \ + --stringparam logo "$(HTMLLOGO_FILE)" \ + -path $(DOCGEN)/priv/dtd \ + -path $(DOCGEN)/priv/dtd_html_entities \ $(DOCGEN)/priv/xsl/db_html.xsl $< $(HTMLDIR)/incompatible.html: incompatible.xml date=`date +"%B %e %Y"`; \ - $(XSLTPROC) --output $(@) --stringparam docgen "$(DOCGEN)" --stringparam topdocdir "$(TOPDOCDIR)" \ - --stringparam pdfdir "$(PDFREFDIR)" --stringparam gendate "$$date" --stringparam appname "$(APPLICATION)" \ - --stringparam appver "$(VSN)" -path $(DOCGEN)/priv/dtd -path $(DOCGEN)/priv/dtd_html_entities \ + $(XSLTPROC) --output $(@) --stringparam docgen "$(DOCGEN)" \ + --stringparam topdocdir "$(TOPDOCDIR)" \ + --stringparam pdfdir "$(PDFREFDIR)" \ + --stringparam gendate "$$date" \ + --stringparam appname "$(APPLICATION)" \ + --stringparam appver "$(VSN)" \ + --stringparam stylesheet "$(CSS_FILE)" \ + --stringparam winprefix "$(WINPREFIX)" \ + --stringparam logo "$(HTMLLOGO_FILE)" \ + -path $(DOCGEN)/priv/dtd \ + -path $(DOCGEN)/priv/dtd_html_entities \ $(DOCGEN)/priv/xsl/db_html.xsl $< #-------------------------------------------------------------------------- diff --git a/system/doc/top/templates/index.html.src b/system/doc/top/templates/index.html.src index 655f532a5d..de87600ebd 100644 --- a/system/doc/top/templates/index.html.src +++ b/system/doc/top/templates/index.html.src @@ -2,7 +2,7 @@ <!-- %CopyrightBegin% -Copyright Ericsson AB 2009-2010. All Rights Reserved. +Copyright Ericsson AB 2009-2012. All Rights Reserved. The contents of this file are subject to the Erlang Public License, Version 1.1, (the "License"); you may not use this file except in @@ -94,7 +94,7 @@ Some hints that may get you started faster <ul> <li> -The complete Erlang language is described in the +The Erlang language is described in the <a href="reference_manual/users_guide.html">Erlang Reference Manual</a>. An Erlang tutorial can be found in <a href="getting_started/users_guide.html"> @@ -109,6 +109,9 @@ In addition to the documentation here Erlang is described in several recent book <li> <a href="http://www.pragprog.com/titles/jaerlang">"Programming Erlang"</a> from Pragmatic. </li> +<li> +<a href="http://www.manning.com/logan">"Erlang and OTP in Action"</a> from Manning. +</li> </ul> <p> These books are highly recommended as a start for learning Erlang. @@ -136,23 +139,21 @@ tags support and more. See the <a href="#tools#/index.html"> Tools</a> application for details. <p> There is also an -<a href="http://erlide.sourceforge.net"> +<a href="http://erlide.org/index.html"> Erlang plugin (ErlIDE) for Eclipse</a> if you prefer a more graphical environment. ErlIDE is under active development with new features in almost every release. <li>When developing with Erlang/OTP you usually test your programs from the interactive shell (see <a href="getting_started/users_guide.html"> Getting Started With Erlang</a>) where you can call individual functions. There is also a number of tools available, such as the graphical <a -href="#debugger#/index.html" >Debugger</a>, the process -manager <a href="#pman#/index.html" >Pman</a> and table -viewer <a href="#tv#/index.html">TV</a>. +href="#debugger#/index.html" >Debugger</a> and the <a href="#observer#/index.html" >Observer tool</a> for inspection of system information, ets and mnesia tables etc. <p> Also note that there are some shell features like history list (control-p and control-n), in line editing (Emacs key bindings) and module and function name completion (tab) if the module is loaded. <p> <li>OpenSource users can ask questions -and share experiences on the <a href="http://www.erlang.org/faq.html"> +and share experiences on the <a href="http://www.erlang.org/static/doc/mailinglist.html"> Erlang questions mailing list</a>. <p> <li>Before asking a question you can browse the <a diff --git a/system/doc/tutorial/Makefile b/system/doc/tutorial/Makefile index e9eb800e46..682a8df4d5 100644 --- a/system/doc/tutorial/Makefile +++ b/system/doc/tutorial/Makefile @@ -1,7 +1,7 @@ # # %CopyrightBegin% # -# Copyright Ericsson AB 2000-2011. All Rights Reserved. +# Copyright Ericsson AB 2000-2012. All Rights Reserved. # # The contents of this file are subject to the Erlang Public License, # Version 1.1, (the "License"); you may not use this file except in diff --git a/system/doc/tutorial/port_driver.c b/system/doc/tutorial/port_driver.c index d428d08ff3..37de67310f 100644 --- a/system/doc/tutorial/port_driver.c +++ b/system/doc/tutorial/port_driver.c @@ -19,7 +19,8 @@ static void example_drv_stop(ErlDrvData handle) driver_free((char*)handle); } -static void example_drv_output(ErlDrvData handle, char *buff, int bufflen) +static void example_drv_output(ErlDrvData handle, char *buff, + ErlDrvSizeT bufflen) { example_data* d = (example_data*)handle; char fn = buff[0], arg = buff[1], res; @@ -32,7 +33,7 @@ static void example_drv_output(ErlDrvData handle, char *buff, int bufflen) } ErlDrvEntry example_driver_entry = { - NULL, /* F_PTR init, N/A */ + NULL, /* F_PTR init, called when driver is loaded */ example_drv_start, /* L_PTR start, called when port is opened */ example_drv_stop, /* F_PTR stop, called when port is closed */ example_drv_output, /* F_PTR output, called when erlang has sent */ @@ -40,9 +41,30 @@ ErlDrvEntry example_driver_entry = { NULL, /* F_PTR ready_output, called when output descriptor ready */ "example_drv", /* char *driver_name, the argument to open_port */ NULL, /* F_PTR finish, called when unloaded */ + NULL, /* void *handle, Reserved by VM */ NULL, /* F_PTR control, port_command callback */ NULL, /* F_PTR timeout, reserved */ - NULL /* F_PTR outputv, reserved */ + NULL, /* F_PTR outputv, reserved */ + NULL, /* F_PTR ready_async, only for async drivers */ + NULL, /* F_PTR flush, called when port is about + to be closed, but there is data in driver + queue */ + NULL, /* F_PTR call, much like control, sync call + to driver */ + NULL, /* F_PTR event, called when an event selected + by driver_event() occurs. */ + ERL_DRV_EXTENDED_MARKER, /* int extended marker, Should always be + set to indicate driver versioning */ + ERL_DRV_EXTENDED_MAJOR_VERSION, /* int major_version, should always be + set to this value */ + ERL_DRV_EXTENDED_MINOR_VERSION, /* int minor_version, should always be + set to this value */ + 0, /* int driver_flags, see documentation */ + NULL, /* void *handle2, reserved for VM use */ + NULL, /* F_PTR process_exit, called when a + monitored process dies */ + NULL /* F_PTR stop_select, called to close an + event object */ }; DRIVER_INIT(example_drv) /* must match name in driver_entry */ |