MS (Master of Science)
Computer and Information Science
Date of Award
Committee Chair or Co-Chairs
Phillip E. Pfeiffer IV
Terry Countermine, Donald B. Sanderson
To transfer data between devices and main memory, standard C block I/O interfaces use block buffers of type char. C++ programs that perform block I/O commonly use typecasting to move data between structures and block buffers. The subject of this thesis, the layout description language (LADEL), represents a high-level solution to the problem of block buffer management. LADEL provides operators that hide the casting ordinarily required to pack and to unpack buffers and guard against overflow of the virtual fields. LADEL also allows a programmer to dynamically define a structured view of a block buffer's contents. This view includes the use of variable length field specifiers, which supports the development of a general specification for an I/O block that optimizes the use of preset buffers. The need for optimizing buffer use arises in file processing algorithms that perform optimally when I/O buffers are filled to capacity. Packing a buffer to capacity can require reasonably complex C++ code. LADEL can be used to reduce this complexity to considerable extent. C++ programs written using LADEL are less complex, easy to maintain, and easier to read than equivalent programs written LADEL. This increase in maintainability is achieved at a cost of approximately 11 % additional time in comparison to programs that use casting to manipulate block buffer data.
Thesis - Open Access
Jeelani, Ashfaq Ahmed, "A Data Layout Descriptor Language (LADEL)." (2001). Electronic Theses and Dissertations. Paper 54. http://dc.etsu.edu/etd/54
Copyright by the authors.