An apparatus comprising: a plurality of processors (201, 202, 203), a data bus, shared by the plurality of processors (201, 202, 203), and configured to at least receive data processed by each of the plurality of processors when performing predetermined tasks, the plurality of processors and data bus comprising at least part of a real-time computing system, wherein the predetermined tasks generate known or predictable amounts of data and the time at which subsequent predetermined tasks are scheduled is known in advance; the apparatus is characterized in further comprising a controller configured to provide for control of a maximum data rate at which data is provided to the data bus for transmission thereover by at least one of the plurality of processors (201, 202, 203) in performing at least one of the predetermined tasks, wherein the controller is configured to provide for a maximum data rate at least comprising an impeded rate for the at least one predetermined tasks and an unimpeded rate wherein the impeded rate is less than the unimpeded rate and wherein the impeded rate comprising a rate that is less than a maximum rate at which the data bus is able to transmit data at the time of performing the at least one of the predetermined tasks and less than a maximum rate at which the at least one processor is able to generate the data for transmission over the data bus in performing the at least one predetermined task, wherein the controller is configured to divide the total data output in performing the at least one predetermined task into a plurality of blocks of data and wherein the controller is configured to provide the impeded data rate by allocating a predetermined number of intervals during which the blocks of data are provided to the data bus and wherein the number of allocated predetermined intervals is dependent on the amount of data generated by the predetermined task, the size of each of the blocks of data and a predetermined task output time comprising an amount of time during which the processed data can be output to the data bus before a subsequent predetermined task is scheduled to be performed. a plurality of processors (201, 202, 203), a data bus, shared by the plurality of processors (201, 202, 203), and configured to at least receive data processed by each of the plurality of processors when performing predetermined tasks, the plurality of processors and data bus comprising at least part of a real-time computing system, wherein the predetermined tasks generate known or predictable amounts of data and the time at which subsequent predetermined tasks are scheduled is known in advance; the apparatus is characterized in further comprising a controller configured to provide for control of a maximum data rate at which data is provided to the data bus for transmission thereover by at least one of the plurality of processors (201, 202, 203) in performing at least one of the predetermined tasks, wherein the controller is configured to provide for a maximum data rate at least comprising an impeded rate for the at least one predetermined tasks and an unimpeded rate wherein the impeded rate is less than the unimpeded rate and wherein the impeded rate comprising a rate that is less than a maximum rate at which the data bus is able to transmit data at the time of performing the at least one of the predetermined tasks and less than a maximum rate at which the at least one processor is able to generate the data for transmission over the data bus in performing the at least one predetermined task, wherein the controller is configured to divide the total data output in performing the at least one predetermined task into a plurality of blocks of data and wherein the controller is configured to provide the impeded data rate by allocating a predetermined number of intervals during which the blocks of data are provided to the data bus and wherein the number of allocated predetermined intervals is dependent on the amount of data generated by the predetermined task, the size of each of the blocks of data and a predetermined task output time comprising an amount of time during which the processed data can be output to the data bus before a subsequent predetermined task is scheduled to be performed.