source: vendor/python/2.5/Doc/lib/libamoeba.tex

Last change on this file was 3225, checked in by bird, 18 years ago

Python 2.5

File size: 3.6 KB
Line 
1\chapter{Amoeba Specific Services}
2
3\section{\module{amoeba} ---
4 Amoeba system support}
5
6\declaremodule{builtin}{amoeba}
7 \platform{Amoeba}
8\modulesynopsis{Functions for the Amoeba operating system.}
9
10
11This module provides some object types and operations useful for
12Amoeba applications. It is only available on systems that support
13Amoeba operations. RPC errors and other Amoeba errors are reported as
14the exception \code{amoeba.error = 'amoeba.error'}.
15
16The module \module{amoeba} defines the following items:
17
18\begin{funcdesc}{name_append}{path, cap}
19Stores a capability in the Amoeba directory tree.
20Arguments are the pathname (a string) and the capability (a capability
21object as returned by
22\function{name_lookup()}).
23\end{funcdesc}
24
25\begin{funcdesc}{name_delete}{path}
26Deletes a capability from the Amoeba directory tree.
27Argument is the pathname.
28\end{funcdesc}
29
30\begin{funcdesc}{name_lookup}{path}
31Looks up a capability.
32Argument is the pathname.
33Returns a
34\dfn{capability}
35object, to which various interesting operations apply, described below.
36\end{funcdesc}
37
38\begin{funcdesc}{name_replace}{path, cap}
39Replaces a capability in the Amoeba directory tree.
40Arguments are the pathname and the new capability.
41(This differs from
42\function{name_append()}
43in the behavior when the pathname already exists:
44\function{name_append()}
45finds this an error while
46\function{name_replace()}
47allows it, as its name suggests.)
48\end{funcdesc}
49
50\begin{datadesc}{capv}
51A table representing the capability environment at the time the
52interpreter was started.
53(Alas, modifying this table does not affect the capability environment
54of the interpreter.)
55For example,
56\code{amoeba.capv['ROOT']}
57is the capability of your root directory, similar to
58\code{getcap("ROOT")}
59in C.
60\end{datadesc}
61
62\begin{excdesc}{error}
63The exception raised when an Amoeba function returns an error.
64The value accompanying this exception is a pair containing the numeric
65error code and the corresponding string, as returned by the C function
66\cfunction{err_why()}.
67\end{excdesc}
68
69\begin{funcdesc}{timeout}{msecs}
70Sets the transaction timeout, in milliseconds.
71Returns the previous timeout.
72Initially, the timeout is set to 2 seconds by the Python interpreter.
73\end{funcdesc}
74
75\subsection{Capability Operations}
76
77Capabilities are written in a convenient \ASCII{} format, also used by the
78Amoeba utilities
79\emph{c2a}(U)
80and
81\emph{a2c}(U).
82For example:
83
84\begin{verbatim}
85>>> amoeba.name_lookup('/profile/cap')
86aa:1c:95:52:6a:fa/14(ff)/8e:ba:5b:8:11:1a
87>>>
88\end{verbatim}
89%
90The following methods are defined for capability objects.
91
92\setindexsubitem{(capability method)}
93\begin{funcdesc}{dir_list}{}
94Returns a list of the names of the entries in an Amoeba directory.
95\end{funcdesc}
96
97\begin{funcdesc}{b_read}{offset, maxsize}
98Reads (at most)
99\var{maxsize}
100bytes from a bullet file at offset
101\var{offset.}
102The data is returned as a string.
103EOF is reported as an empty string.
104\end{funcdesc}
105
106\begin{funcdesc}{b_size}{}
107Returns the size of a bullet file.
108\end{funcdesc}
109
110\begin{funcdesc}{dir_append}{}
111\funcline{dir_delete}{}
112\funcline{dir_lookup}{}
113\funcline{dir_replace}{}
114Like the corresponding
115\samp{name_}*
116functions, but with a path relative to the capability.
117(For paths beginning with a slash the capability is ignored, since this
118is the defined semantics for Amoeba.)
119\end{funcdesc}
120
121\begin{funcdesc}{std_info}{}
122Returns the standard info string of the object.
123\end{funcdesc}
124
125\begin{funcdesc}{tod_gettime}{}
126Returns the time (in seconds since the Epoch, in UCT, as for \POSIX) from
127a time server.
128\end{funcdesc}
129
130\begin{funcdesc}{tod_settime}{t}
131Sets the time kept by a time server.
132\end{funcdesc}
Note: See TracBrowser for help on using the repository browser.