A system for monitoring a space and equipment in an environment comprising: a processor; a sensor interface responsive to the processor for gathering environmental data; and memory responsive to the processor, the memory including program instructions operable to direct the processor to: implement a kernel-mode device driver for manipulating a journal based data system associated with said environmental data received via the sensor interface; implement a plurality of variable records in the journal based data system, each variable record of the plurality of variable records being associated with a sensor and indicating a data type for environmental data gathered from the associated sensor; implement a plurality of sets of variable update records in the journal based data system, each variable update record of a set of variable update records being pointed to by an associated one of said variable records and comprising a field for a timestamp indicating an update time of said variable update record, wherein a combination of each set of variable update records and its associated variable record form a doubly-linked circular list; wherein said doubly-linked circular list is ordered with respect to said timestamp; gather the environmental data from one of the sensors at a plurality of different times; and store the environmental data from each one of said plurality of different times, along with associated timestamp corresponding to the time the environmental data was gathered, from said one of the sensors into respective variable update records of said set of variable update records pointed to by the variable record associated with said one of the sensors. a processor; a sensor interface responsive to the processor for gathering environmental data; and memory responsive to the processor, the memory including program instructions operable to direct the processor to: implement a kernel-mode device driver for manipulating a journal based data system associated with said environmental data received via the sensor interface; implement a plurality of variable records in the journal based data system, each variable record of the plurality of variable records being associated with a sensor and indicating a data type for environmental data gathered from the associated sensor; implement a plurality of sets of variable update records in the journal based data system, each variable update record of a set of variable update records being pointed to by an associated one of said variable records and comprising a field for a timestamp indicating an update time of said variable update record, wherein a combination of each set of variable update records and its associated variable record form a doubly-linked circular list; wherein said doubly-linked circular list is ordered with respect to said timestamp; gather the environmental data from one of the sensors at a plurality of different times; and store the environmental data from each one of said plurality of different times, along with associated timestamp corresponding to the time the environmental data was gathered, from said one of the sensors into respective variable update records of said set of variable update records pointed to by the variable record associated with said one of the sensors. implement a kernel-mode device driver for manipulating a journal based data system associated with said environmental data received via the sensor interface; implement a plurality of variable records in the journal based data system, each variable record of the plurality of variable records being associated with a sensor and indicating a data type for environmental data gathered from the associated sensor; implement a plurality of sets of variable update records in the journal based data system, each variable update record of a set of variable update records being pointed to by an associated one of said variable records and comprising a field for a timestamp indicating an update time of said variable update record, wherein a combination of each set of variable update records and its associated variable record form a doubly-linked circular list; wherein said doubly-linked circular list is ordered with respect to said timestamp; gather the environmental data from one of the sensors at a plurality of different times; and store the environmental data from each one of said plurality of different times, along with associated timestamp corresponding to the time the environmental data was gathered, from said one of the sensors into respective variable update records of said set of variable update records pointed to by the variable record associated with said one of the sensors.