Language:
Free Online Dictionary|3Dict

cooperative multitasking

Source : Free On-Line Dictionary of Computing

cooperative multitasking
     
         A form of {multitasking} where it
        is the responsibility of the currently running task to give up
        the processor to allow other tasks to run.  This contrasts
        with {pre-emptive multitasking} where the task {scheduler}
        periodically suspends the running task and restarts another.
     
        Cooperative multitasking requires the programmer to place
        calls at suitable points in his code to allow his task to be
        {deschedule}d which is not always easy if there is no obvious
        top-level {main loop} or some routines run for a long time.
        If a task does not allow itself to be descheduled all other
        tasks on the system will appear to "freeze" and will not
        respond to user action.
     
        The advantage of cooperative multitasking is that the
        programmer knows where the program will be descheduled and can
        make sure that this will not cause unwanted interaction with
        other processes.  Under {pre-emptive multitasking}, the
        scheduler must ensure that sufficient state for each process
        is saved and restored that they will not interfere.  Thus
        cooperative multitasking can have lower {overheads} than
        pre-emptive multitasking because of the greater control it
        offers over when a task may be descheduled.
     
        Cooperative multitasking is used in {RISC OS}, {Microsoft
        Windows} and {Macintosh} {System 7}.
     
        (1995-03-20)
Sort by alphabet : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z