Opções: 1 - Armazena/Atualiza um Registro 2 - Remove um Registro 3 - Lista um Registro 4 - Lista todos os Registros 5 - Finaliza a Aplicação
Na opção 1. - o programa pede o nome e o número do telefone. Caso um registro com o nome já esteja armazenado, o programa alerta o usuário solicitando permissão para atualizar o registro. Nas opções 2. e 3. - apenas o nome é solicitado. A opção 2. retorna um indicativo de sucesso (registro removido) ou falha (registro não encontrado). Na opção 3. o programa retorna o número do telefone ou um indicativo de falha (registro não encontrado). A Opção 4 lista todos os registros da armazenados na Base de Dados.
Para implementar uma versão distribuída do "gdbm" (ou dbm), implementar-se-á um servidor "gdbm" capaz de receber requisições via rede e clientes que interagindo com os usuários irão despachar mensagens ao servidor acerca da escolha do usuário.
Para facilitar o desenvolvimento da aplicação, considere as seguintes etapas: a. desenvolver um protocolo de comunicação cliente/servidor capaz de requisitar e receber o resultado de todas as operações "gdbm"; b. desenvolver uma biblioteca de funções "gdbm" para que possa ser utilizada pelo cliente no redirecionamento das mensagens ao servidor; c. implementar um servidor "gdbm" que receba e processe requisições via protocolo desenvolvido no item "a"; e d. testar a versão distribuída com um cliente.
A comunicação cliente/servidor deverá se processar via biblioteca de sockets.
Exemplos da utilização de socket: