mosys - The more open system tool Introduction ------------ Mosys is designed to aid in obtaining obscure system-specific information and present it in a uniform, human-friendly manner that is also parseable. It is intended to complement other systems software and may overlap in some areas. Examples of information this program is useful for: - Platform identification - Snapshot of machine information - Listing non-enumerable devices - Retrieving vital product data Due to the system-specific nature of this program, it is unlikely to work with most platforms. A generic subset of functionality will be available, though its usefulness may be extremely limited. Core components of mosys came from an internal project within Google (gsys) and were opened as part of ChromiumOS, hence "more open." Configuration & Building ------------------------ Mosys uses the Linux kernel configuration and build system. "make help" lists the available configuration and build targets. After a fresh checkout, you will need to generate a configuration file before the sources may be compiled. To do so, run a configuration target (ie "make menuconfig") followed by a generic target such as "make" or "make all". Usage ----- Mosys commands are organized in a a hierarchy. Each supported platform will have a specific set of commands made available. Typically, top-level commands will reflect classes of hardware components such as "cpu" or "sensor", available busses such as "pci" or "i2c", or a type of information such as "smbios" or "vpd" that is present on the host platform. Mosys returns EXIT_SUCCESS upon successful completion of a command. If a command is not implemented for the host platform then it will return ENOSYS. Other return values correspond to errno if possible to make determining what went wrong easier, or a generic error code (EXIT_FAILURE) if unknown. Use "mosys -t" to display the command tree for the host platform.