jGuru
Register Email     Password Forgot your
password?
HOME FAQS FORUMS DOWNLOADS ARTICLES PEERSCOPE LEARN

  Search   jGuru Search Help

Question What is the difference between multithreading and multitasking? What about multiprogramming? Multiprocessing?
Derived from A question posed by sharma MR
Topics Programming:Concepts:Threads
Author Alex Chaffee PREMIUM
Created Sep 20, 2000 Modified Oct 2, 2001


Answer
Multitasking is running multiple "heavyweight" processes (tasks) by a single OS.

Multithreading is running multiple "lightweight" processes (threads of execution) in a single process / task / program. See What is the difference between a lightweight and a heavyweight process? for more detail on lightweight vs. heavyweight processes.

Multiprogramming is essentially a synonym for multitasking (though multitasking connotes sharing more resources than just the CPU, and is the more popular term).

Multiprocessing involves using multiple CPUs, either in the same (SMP) or different (MPP) host boxes, to run a program. See whatis.com for a good definition.

Most Java implementations will split threads among different processors if they're running on an SMP box.

Is this item helpful?  yes  no     Previous votes   Yes: 4  No: 0



Comments and alternative answers

Comment on this FAQ entry

MultiProgramming and MultiTasking is similar means...
ramasubbu narayanan, Oct 12, 2000  [replies:4]
MultiProgramming and MultiTasking is similar means several Programs running at Different Process areas (Memory locations). So communication between two process is difficult ie., by marshalling...

MultiThreading runs in the Same Address Space and can communicate easily and it's light weight.

Is this item helpful?  yes  no     Previous votes   Yes: 0  No: 0



Reply to this answer/comment  Help  

Re: MultiProgramming and MultiTasking is similar means...
Simon Ablett PREMIUM, Sep 5, 2001
Multithreading is a specialised subset of multitasking. If I remember from college, multitasking does not necessarily mean seperate programs. Rather it refers to seperate processes each running concurrently. This could refer to a multithreaded process.

Is this item helpful?  yes  no     Previous votes   Yes: 0  No: 0



Reply to this answer/comment  Help  
Re: MultiProgramming and MultiTasking is similar means...
vysyaraju Ajay Raju, Apr 1, 2004  [replies:2]

Multiprogramming is a method of running several different programs in a computer apparently at the same time.

Usually on a mainframe - the computer has a number of programs loaded into memory and the operating system switches quickly between them, processing a little bit of each one in turn. The high speed of the processor makes it seem like more than one program is being run at the same time.

On a PC it is usually called multitasking.



Is this item helpful?  yes  no     Previous votes   Yes: 0  No: 0



Reply to this answer/comment  Help  

Re[2]: MultiProgramming and MultiTasking is similar means...
Karthik Ramachandran, Sep 13, 2004  [replies:1]
Multitasking and multiprogramming have nothing to do with whether its i on a PC or mainframe. Infact they both are the same. The difference is that multiprogramming is a term that was used before the introduction of virtual memory. Before there was virtual memory, programs resided in memory entirely or not. Hence it was called multiprogramming. With the advent of Virtual memory, programs could reside in parts . Hence at any time there could be different parts of many programs in the memory. Henc since these parts were not really programs, they began to be called as tasks and hence multitasking.

Is this item helpful?  yes  no     Previous votes   Yes: 0  No: 0



Reply to this answer/comment  Help  
Re[3]: MultiProgramming and MultiTasking is similar means...
rajeshwar kanojia, Oct 15, 2007
as we know threads are lwp(light weight process) can work cuncurrently that is multithreading... multitasking meas user can perform many task on a pc at a time like he can typing work on word processor, he can play song/video files, he can print any matter and he can surf on the net at the same time.... multiprogramming is many user can perform their task on a multiprogramming machine........

Is this item helpful?  yes  no     Previous votes   Yes: 0  No: 0



Reply to this answer/comment  Help  


Ask A Question



 
Related Links

Threads FAQ

Threads Forum

Sun Tutorial: Doing Two or More Tasks at Once: Threads

Concurrent Programming in Java, Second Edition

Thread Method Deprecation

Wish List
Features
About jGuru
Contact Us

 



The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers