A model for a context aware machine-based personal memory manager and its implementation using a visual programming environment
- Authors: Tsegaye, Melekam Asrat
- Date: 2007
- Subjects: Visual programming (Computer science) Memory management (Computer science) Memory -- Data processing
- Language: English
- Type: Thesis , Doctoral , PhD
- Identifier: vital:4640 , http://hdl.handle.net/10962/d1006563
- Description: Memory is a part of cognition. It is essential for an individual to function normally in society. It encompasses an individual's lifetime experience, thus defining his identity. This thesis develops the concept of a machine-based personal memory manager which captures and manages an individual's day-to-day external memories. Rather than accumulating large amounts of data which has to be mined for useful memories, the machine-based memory manager automatically organizes memories as they are captured to enable their quick retrieval and use. The main functions of the machine-based memory manager envisioned in this thesis are the support and the augmentation of an individual's biological memory system. In the thesis, a model for a machine-based memory manager is developed. A visual programming environment, which can be used to build context aware applications as well as a proof-of-concept machine-based memory manager, is conceptualized and implemented. An experimental machine-based memory manager is implemented and evaluated. The model describes a machine-based memory manager which manages an individual's external memories by context. It addresses the management of external memories which accumulate over long periods of time by proposing a context aware file system which automatically organizes external memories by context. It describes how personal memory management can be facilitated by machine using six entities (life streams, memory producers, memory consumers, a memory manager, memory fragments and context descriptors) and the processes in which these entities participate (memory capture, memory encoding and decoding, memory decoding and retrieval). The visual programming environment represents a development tool which contains facilities that support context aware application programming. For example, it provides facilities which enable the definition and use of virtual sensors. It enables rapid programming with a focus on component re-use and dynamic composition of applications through a visual interface. The experimental machine-based memory manager serves as an example implementation of the machine-based memory manager which is described by the model developed in this thesis. The hardware used in its implementation consists of widely available components such as a camera, microphone and sub-notebook computer which are assembled in the form of a wearable computer. The software is constructed using the visual programming environment developed in this thesis. It contains multiple sensor drivers, context interpreters, a context aware file system as well as memory retrieval and presentation interfaces. The evaluation of the machine-based memory manager shows that it is possible to create a machine which monitors the states of an individual and his environment, and manages his external memories, thus supporting and augmenting his biological memory.
- Full Text:
- Date Issued: 2007
A comparative study of the Linux and windows device driver architecture with a focus on IEEE1394 (high speed serial bus) drivers
- Authors: Tsegaye, Melekam Asrat
- Date: 2004
- Subjects: Microsoft Windows (Computer file) , Linux , Operating systems (Computers) , DOS device drivers (Computer programs) , Linux device drivers (Computer programs)
- Language: English
- Type: Thesis , Masters , MSc
- Identifier: vital:4591 , http://hdl.handle.net/10962/d1004829 , Microsoft Windows (Computer file) , Linux , Operating systems (Computers) , DOS device drivers (Computer programs) , Linux device drivers (Computer programs)
- Description: New hardware devices are continually being released to the public by hardware manufactures around the world. For these new devices to be usable under a PC operating system, device drivers that extend the functionality of the target operating system have to be constructed. This work examines and compares the device driver architectures currently in use by two of the most widely used operating systems, Microsoft’s Windows and Linux. The IEEE1394 (high speed serial bus) device driver stacks on each operating system are examined and compared as an example of a major device driver stack implementation, including driver requirements for the upcoming IEEE1394.1 bridging standard.
- Full Text:
- Date Issued: 2004