head 1.2; access; symbols RPM_4_2_1:1.1.1.5 RPM_4_2:1.1.1.5 RPM_4_1_1:1.1.1.5 RPM_4_1:1.1.1.4 RPM_4_0_5:1.1.1.3 RPM_4_0_4:1.1.1.2 RPM_4_0_3:1.1.1.1 RPM:1.1.1; locks; strict; comment @# @; 1.2 date 2008.01.02.09.54.58; author rse; state dead; branches; next 1.1; commitid z4cpSiAhOCXk5PLs; 1.1 date 2001.07.23.20.45.37; author rse; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2001.07.23.20.45.37; author rse; state Exp; branches; next 1.1.1.2; 1.1.1.2 date 2002.01.08.00.30.11; author rse; state Exp; branches; next 1.1.1.3; 1.1.1.3 date 2003.01.18.13.49.02; author rse; state Exp; branches; next 1.1.1.4; 1.1.1.4 date 2001.12.06.00.08.15; author rse; state Exp; branches; next 1.1.1.5; 1.1.1.5 date 2003.01.18.14.04.59; author rse; state Exp; branches; next ; desc @@ 1.2 log @remove the ancient RPM 4.2.1 source tree copy @ text @
|
![]() ![]() ![]() |
Berkeley DB currently disallows the DB_TRUNC flag to DB->open. The operations that this flag represents are not fully supported under VxWorks 5.4.
The memory on VxWorks is always resident and fully shared among all tasks running on the target. For this reason, the DB_SYSTEM_MEM flag is implied for any application that does not specify the DB_PRIVATE flag. Additionally, applications must use a segment ID to ensure that different applications do not overwrite each other's database environments. See the DB_ENV->set_shm_key function for more information. Also, the DB_LOCKDOWN flag has no effect.
The DB->sync function is implemented using an ioctl call into the file system driver with the FIOSYNC command. Most, but not all file system drivers support this call. Berkeley DB requires the use of a file system supporting FIOSYNC.
Each example program can be downloaded and run by calling the function equivalent to the example's name. You may have to edit the pathname to the environments and database names in the examples' sources. The examples included are shown in the following table:
Name | Description |
---|---|
ex_access | Simple access method example. |
ex_btrec | Example using Btree and record numbers. |
ex_dbclient | Example running an RPC client. Takes a hostname as an argument; for example, ex_dbclient "myhost". |
ex_env | Example using an environment. |
ex_mpool | Example using mpools. |
ex_tpcb | Example using transactions. This example requires two invocations, both taking an integer identifier as an argument. This identifier allows for multiple sets of databases to be used within the same environment. The first is to initialize the databases; for example, ex_tpcb_init 1. The second is to run the program on those databases, for example, ex_tpcb 1. |
![]() ![]() ![]() |
Copyright Sleepycat Software @ 1.1 log @Initial revision @ text @d1 1 a1 1 @ 1.1.1.1 log @Import: RPM 4.0.3 @ text @@ 1.1.1.2 log @Import: RPM 4.0.4 @ text @d1 1 a1 1 d14 1 a14 1
The DB->sync function is implemented using an ioctl call into the file system driver with the FIOSYNC command. Most, but not all file system drivers support this call. Berkeley DB requires the use of a file system supporting FIOSYNC.
The demo program should be built in a manner very similar to building Berkeley DB. If you want different or additional BSP build specifications you should add them by following the directions indicated in Building with Tornado 2.0 or Building with Tornado 3.1.
The demo program can be downloaded and run by calling the entry function dbdemo with the pathname of a database to use. The demo program will ask for some input keys. It creates a database and adds those keys into the database, using the reverse of the key as the data value. When complete you can either enter EOF (control-D) or quit and the demo program will display all of the key/data items in the database.
The Berkeley DB utility programs can be downloaded and run by calling the function equivalent to the utility's name. The utility functions take a string containing all the supported arguments. The program will then decompose that string into a traditional argc/argv used internally. For example, to execute db_stat on a database within an environment you would execute the following from the windsh prompt. Obviously you would change the pathname and database name to reflect your system.
-> db_stat "-h /tmp/myenvhome -d mydatabase.db"
All tasks wishing to access a particular environment must run in the same application domain. The memory regions used by the environment are only accessible to the application domain. If more than one application domain attempts to access an environment simultaneously, the results are undefined but will likely lead to corruption.
![]() ![]() ![]() |