dict.org

The DICT Development Group


Search for:
Search type:
Database:

Database copyright information
Server information
Wiki: Resources, links, and other information


1 definition found
 for multitasking
From The Free On-line Dictionary of Computing (18 March 2015) :

  multitasking
  concurrency
  concurrent processing
  multiprogramming
  process scheduling
  
      (Or "multi-tasking", "multiprogramming",
     "concurrent processing", "concurrency", "process scheduling")
     A technique used in an operating system for sharing a single
     processor between several independent jobs.  The first
     multitasking operating systems were designed in the early
     1960s.
  
     Under "{cooperative multitasking" the running task decides
     when to give up the CPU and under "{pre-emptive multitasking"
     (probably more common) a system process called the
     "{scheduler" suspends the currently running task after it has
     run for a fixed period known as a "{time-slice".  In both
     cases the scheduler is responsible for selecting the next task
     to run and (re)starting it.
  
     The running task may relinquish control voluntarily even in a
     pre-emptive system if it is waiting for some external event.
     In either system a task may be suspended prematurely if a
     hardware interrupt occurs, especially if a higher priority
     task was waiting for this event and has therefore become
     runnable.
  
     The scheduling algorithm used by the scheduler determines
     which task will run next.  Some common examples are
     round-robin scheduling, priority scheduling, shortest job
     first and guaranteed scheduling.
  
     Multitasking introduces overheads because the processor
     spends some time in choosing the next job to run and in saving
     and restoring tasks' state, but it reduces the worst-case time
     from job submission to completion compared with a simple
     batch system where each job must finish before the next one
     starts.  Multitasking also means that while one task is
     waiting for some external event, the CPU to do useful work
     on other tasks.
  
     A multitasking operating system should provide some degree of
     protection of one task from another to prevent tasks from
     interacting in unexpected ways such as accidentally modifying
     the contents of each other's memory areas.
  
     The jobs in a multitasking system may belong to one or many
     users.  This is distinct from parallel processing where one
     user runs several tasks on several processors.  Time-sharing
     is almost synonymous but implies that there is more than one
     user.
  
     Multithreading is a kind of multitasking with low
     overheads and no protection of tasks from each other, all
     threads share the same memory.
  
     (1998-04-24)
  

Questions or comments about this site? Contact webmaster@dict.org