Session

Technical Session IX: Data Handling

Abstract

Satellite Operating Software has traditionally been highly specialized custom software which operates one satellite according to deterministic rules. Software changes are usually accomplished with a complete reload from the ground, and performing patches require explicit knowledge of memory maps, variable locations, etc. and can often result in long term satellite down times. As computer, sensor and communication technology increases, more and more of the computing, routing and decision functions of small satellite systems are occurring onboard, and a need exists for adaptable flexible software. The object oriented approach to satellite operating systems provides a malleable system, resilient to failure, distributable across multiple satellites and easily adaptable to other applications. The Operating System acts as a switch for the distribution and execution of messages whether a command, code or data. Even operating system functions can only be executed by sending a message internally. These technique’s provide for a safe system and simplified software maintenance. Since software code is broken into objects, the particular application can be distributed amongst one or more processors, satellites, ground stations or remote terminals. This allows for multi-processor based communication load balancing algorithms, dynamic fail-over capability and compute bound resource sharing. Since no explicit hardware knowledge is required by the flight application code, most objects can be reused for other satellite applications. Such systems can be implemented on small satellites using current processor technology.

Share

COinS
 
Aug 30th, 11:44 AM

A Flexible Object Oriented Spacecraft Operating System (FOS)

Satellite Operating Software has traditionally been highly specialized custom software which operates one satellite according to deterministic rules. Software changes are usually accomplished with a complete reload from the ground, and performing patches require explicit knowledge of memory maps, variable locations, etc. and can often result in long term satellite down times. As computer, sensor and communication technology increases, more and more of the computing, routing and decision functions of small satellite systems are occurring onboard, and a need exists for adaptable flexible software. The object oriented approach to satellite operating systems provides a malleable system, resilient to failure, distributable across multiple satellites and easily adaptable to other applications. The Operating System acts as a switch for the distribution and execution of messages whether a command, code or data. Even operating system functions can only be executed by sending a message internally. These technique’s provide for a safe system and simplified software maintenance. Since software code is broken into objects, the particular application can be distributed amongst one or more processors, satellites, ground stations or remote terminals. This allows for multi-processor based communication load balancing algorithms, dynamic fail-over capability and compute bound resource sharing. Since no explicit hardware knowledge is required by the flight application code, most objects can be reused for other satellite applications. Such systems can be implemented on small satellites using current processor technology.