Browse Prior Art Database

Memory Space Allocation of Messages in Voice-Mail

IP.com Disclosure Number: IPCOM000039691D
Original Publication Date: 1987-Jul-01
Included in the Prior Art Database: 2005-Feb-01
Document File: 3 page(s) / 47K

Publishing Venue

IBM

Related People

Fraisse, JC: AUTHOR

Abstract

This article describes a method of memory space allocation of messages in a computer-based voice-mail system. The proposed technique provides fast access to the message data base and instantaneous compression and reorganization of the messages. Typically, a voice-mail system includes input/output ports, voice processing means, a Central Processing Unit (CPU) and a disk storage comprised of one or more disk units. Efficient management of the disk storage on which messages are recorded is required because voice-mail systems should be able to record a large number of messages which may have different lengths. The message data base, which may be stored in a disk unit, is partitioned into a sequence of message blocks numbered, for example, from 1 to N. Messages can be comprised of a variable number of blocks.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 3

Memory Space Allocation of Messages in Voice-Mail

This article describes a method of memory space allocation of messages in a computer-based voice-mail system. The proposed technique provides fast access to the message data base and instantaneous compression and reorganization of the messages. Typically, a voice-mail system includes input/output ports, voice processing means, a Central Processing Unit (CPU) and a disk storage comprised of one or more disk units. Efficient management of the disk storage on which messages are recorded is required because voice-mail systems should be able to record a large number of messages which may have different lengths. The message data base, which may be stored in a disk unit, is partitioned into a sequence of message blocks numbered, for example, from 1 to
N. Messages can be comprised of a variable number of blocks. Three pointers indexes, referenced Freeblck, Freemess and Message, respectively, and which provide information on memory space allocation of the blocks and messages, are stored on a disk. The Freeblck index contains a plurality of pointers, each specifying one block within the message data base. A pointer is marked with a first given character, for example D, when the corresponding block is free, and with a second given character, R, when the corresponding block contains a recorded message or portion of a message. The Freemess index contains a sequence of pointers, each specifying a message number. They are also marked with characters D or R, depending whether the corresponding messages are free or recorded. The Message index contains a sequence of records, each corresponding to one message and comprising pointers which specify the blocks of which the message is made. The access program which runs within the CPU with a low priority level prepares allocation of the next messages to be recorded, during a so-called message pre-processing step. During that step, the Freemess index is read out from the disk and stored within the CPU. The access program successively reads the pointers of the Freemess index, and when it recognizes the first pointer in the sequence which is marked D, it changes character D to another predetermined character, I, whereby reserving the corresponding message number. As illustrated in the figure, assuming, for example, that the two first messages were recorded, the two first pointers are marked R, and the third pointer which corresponds to message number 3 is reserved with character I. The access program creates a message 3 record and write...