some sort of hardware architecture or software framework, that allows this software to run