Sponsored Content
Top Forums Programming gdbm with c programmin Books & Tutorial. Post 302697385 by DGPickett on Thursday 6th of September 2012 04:52:33 PM
Old 09-06-2012
It is good to know relational databases, generally, and SQL, and simpler C/C++/JAVA APIs, before diving into the combination. The APIs are more orderly in C++/JAVA, while C APIs run on assumptions and man pages. Starting with a simple API to learn C/C++/JAVA is a good start, before going into complex APIs.

Generally, gdbm allows you to create container objects with hash based search. Ther are many different container types. They all act much like a RDBMS table with one index only. You can index data a second way by creating a second, indexing container to search using a different key. Data storage can be by pointer outside the containers, so two containers can point to the same row or tuple of data. However, you need reverse pointers in the data so a delete on one key can delete in the other container, too.

Besides hash, which is great for fast random lookup but requires some configuration for size, there is linear-hash, tree, unsorted, array, linked-list (one way or forward-backward) containers, each with different advantages. Trees are always sorted and tolerate all amounts of data well without configuration. Unsorted linked list is very fast to insert and slow to query, update, delete specific item. Hash has a patterened disorder when examining all items.
This User Gave Thanks to DGPickett For This Post:
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Books on Shell programmin

Can Anyone suggest few good books on Unix Shell Programming and C on Unix. Thanks Prasad (5 Replies)
Discussion started by: pswar70
5 Replies

2. Shell Programming and Scripting

Tk tutorial

Anyone know any good website with a step by step instructions on writing Perl GUI scripts with Tk ??? (3 Replies)
Discussion started by: perleo
3 Replies

3. Shell Programming and Scripting

file editting with shell programmin

Hello, I have several handreds of text files. The format of file looks like: column1 column2 column3 column4 column5 id1 definition1 name1 fieldid comm1 id2 definition2 name2 fieldid ... (4 Replies)
Discussion started by: ssshen
4 Replies

4. IP Networking

socket programmin

I was trying to write proxy code but i here is a problem typedef struct req_msg { char *host;//hostname char *filename;//filename char *modified;//date char *data; char *request; }req_msg; while(take_responce(req,request)!=0) // take_responce gets responce from http server //... (0 Replies)
Discussion started by: yogesh_powar
0 Replies

5. Shell Programming and Scripting

Books on PHP & APACHE

Can anybody please suggest me a good book to learn PHP and Apache. I want to use it for general programming and espeacially as front end tool for INFORMIX RDBMS. The book should guide me from the basics, as I am a beginer for PHP & Apache on SUSE Linux 9.0. (1 Reply)
Discussion started by: V.V.KUMAR
1 Replies

6. UNIX for Dummies Questions & Answers

Problem installing gdbm

I'm trying to install gdbm on a MacPro running Leopard. But when I do the make install, I get this error: /usr/bin/install -c -m 644 -o root -g root gdbm.h \ /usr/include/gdbm.h install: root: Invalid argument make: *** Error 67 Any ideas? Thanks (1 Reply)
Discussion started by: Shan Hollen
1 Replies

7. AIX

books & documents

can someone tell me the name of the books for aix it is better if some one provide me links to any useful document (2 Replies)
Discussion started by: alokjyotibal
2 Replies

8. Shell Programming and Scripting

PHP read large string & split in multidimensional arrays & assign fieldnames & write into MYSQL

Hi, I hope the title does not scare people to look into this thread but it describes roughly what I'm trying to do. I need a solution in PHP. I'm a programming beginner, so it might be that the approach to solve this, might be easier to solve with an other approach of someone else, so if you... (0 Replies)
Discussion started by: lowmaster
0 Replies

9. Web Development

Vue JS 2 Tutorial by The Net Ninja: A Recommended Vue.js Video Tutorial Series

A number of people have asked me how to get started with Vue.js and my reply before today was to Google "Vue.js". That has changed and my recommendation to anyone who wants to learn the fastest growing, easiest to learn and use Vue.js web dev framework is to watch this video tutorial series: ... (0 Replies)
Discussion started by: Neo
0 Replies
SYSTEMD-NSPAWN(1)						  systemd-nspawn						 SYSTEMD-NSPAWN(1)

NAME
systemd-nspawn - Spawn a namespace container for debugging, testing and building SYNOPSIS
systemd-nspawn [OPTIONS...] [COMMAND] [ARGS...] DESCRIPTION
systemd-nspawn may be used to run a command or OS in a light-weight namespace container. In many ways it is similar to chroot(1), but more powerful since it fully virtualizes the file system hierarchy, as well as the process tree, the various IPC subsystems and the host and domain name. systemd-nspawn limits access to various kernel interfaces in the container to read-only, such as /sys, /proc/sys or /sys/fs/selinux. Network interfaces and the system clock may not be changed from within the container. Device nodes may not be created. The host system cannot be rebooted and kernel modules may not be loaded from within the container. Note that even though these security precautions are taken systemd-nspawn is not suitable for secure container setups. Many of the security features may be circumvented and are hence primarily useful to avoid accidental changes to the host system from the container. The intended use of this program is debugging and testing as well as building of packages, distributions and software involved with boot and systems management. In contrast to chroot(1) systemd-nspawn may be used to boot full Linux-based operating systems in a container. Use a tool like debootstrap(8) or mock(1) to set up an OS directory tree suitable as file system hierarchy for systemd-nspawn containers. Note that systemd-nspawn will mount file systems private to the container to /dev, /run and similar. These will not be visible outside of the container, and their contents will be lost when the container exits. Note that running two systemd-nspawn containers from the same directory tree will not make processes in them see each other. The PID namespace separation of the two containers is complete and the containers will share very few runtime objects except for the underlying file system. OPTIONS
If no arguments are passed the container is set up and a shell started in it, otherwise the passed command and arguments are executed in it. The following options are understood: --help, -h Prints a short help text and exits. --directory=, -D Directory to use as file system root for the namespace container. If omitted the current directory will be used. --user=, -u Run the command under specified user, create home directory and cd into it. As rest of systemd-nspawn, this is not the security feature and limits against accidental changes only. --private-network Turn off networking in the container. This makes all network interfaces unavailable in the container, with the exception of the loopback device. EXAMPLE 1 # debootstrap --arch=amd64 unstable debian-tree/ # systemd-nspawn -D debian-tree/ This installs a minimal Debian unstable distribution into the directory debian-tree/ and then spawns a shell in a namespace container in it. EXAMPLE 2 # mock --init # systemd-nspawn -D /var/lib/mock/fedora-rawhide-x86_64/root/ /sbin/init systemd.log_level=debug This installs a minimal Fedora distribution into a subdirectory of /var/lib/mock/ and then boots an OS in a namespace container in it, with systemd as init system, configured for debug logging. EXIT STATUS
The exit code of the program executed in the container is returned. SEE ALSO
systemd(1), chroot(1), debootstrap(8), mock(1) AUTHOR
Lennart Poettering <lennart@poettering.net> Developer systemd 10/07/2013 SYSTEMD-NSPAWN(1)
All times are GMT -4. The time now is 06:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy