title: Hydra: a C-language environment for real-time DOS multitasking at the bedside.
abstract: Patient monitoring at the bedside is an inherently parallel job, best handled by multiple individual tasks running concurrently. Cost and diffusion considerations strongly favor the use of PC's at the bedside, but their most widespread operating system, DOS, is not built for multitasking. Hence, a software platform in C language has been prepared, allowing the intermediate programmer to easily write independent modules which will then run simultaneously without conflicts. Such a platform aims at allowing effortless sharing of data among concurrently running processes, while providing strong insulation between tasks, enough to allow multiple copies of any one task to run simultaneously unknown to each other. A cooperative, memory sharing multitasking paradigm has been chosen, which offers fine granularity of timeslicing and low execution overhead at the price of some loss in generality of design. Speed, data exchange capability and number of stackable windows are greater than with commercial packages like Windows or LabWindows. Dynamical reprioritization of tasks is built in, allowing the computerized monitor to focus its attention and resources on urgent tasks.
authors.affiliation: CNR Centro Fisiopatologia Shock e Clinica Chirurgica, Università Cattolica del Sacro Cuore, Rome, Italy.
authors.forename: A
authors.initials: A
authors.lastname: DeGaetano
authors.forename: W P
authors.initials: WP
authors.lastname: Coleman
authors.forename: R
authors.initials: R
authors.lastname: Pizzi
authors.forename: E
authors.initials: E
authors.lastname: Tomasella
authors.forename: M
authors.initials: M
authors.lastname: Castagneto
authors.forename: A V
authors.initials: AV
authors.lastname: Greco
mesh_terms: D000465:Algorithms; D003195:Computer Communication Networks / Q000295:instrumentation; D003199:Computer Systems; D004360:Drug Therapy, Computer-Assisted / Q000295:instrumentation; D006801:Humans; D016347:Medical Records Systems, Computerized / Q000295:instrumentation; D008838:Microcomputers; D008991:Monitoring, Physiologic / Q000295:instrumentation*; D016571:Neural Networks, Computer; D012815:Signal Processing, Computer-Assisted / Q000295:instrumentation; D012985:Software Design