answersLogoWhite

0


Best Answer

I have both BSCS and MSCS, with 24 years in industry, and I have heard the use of these terms vary depending upon who is using them, but this is my view based on my experience.

Multiprogramming is an old and arcane term, that was originally used to describe the earlier timesharing type of system where multiple jobs/Programs could be submitted to a computer system, and it should share its various resources between all of the jobs that were running. The jobs/programs were not decomposed beyond the job level, and this was the granularity of the CPU and resource sharing that occurred. It is true to say that multiprogramming is still supported today on modern computers because it is true that multiple jobs/programs are running at once. However, this is true of all computers now, and is not even a relevant consideration. What is relevant though is the level of sharing that has changed dramatically over the years.

Now, the terms multitasking, multiprocessing and multithreading, mean the exact same thing in the general sense, and none has any dependency on the number of CPUs in a system. The first thing to understand here is that the words are basically synonymous in the general sense in that, a task is a process is a job is a thread is a program. Its all based on your POV. Where these terms start to take on specific meaning is when viewed in the context of a specific execution environment where a program is designed, compiled, loaded and executed on a specific piece of computer hardware. This context might assign a hierarchical meaning such as a program is the highest level of organization that decomposes into multiple tasks that run separately, that each can be decomposed into one or more processes, that can be further decomposed into some number of threads. Just an example.

You can take that same decomposition and apply it in the compiler used to build software for a true multiprocessor system, and it will look for these, and also other patterns of execution that allow load balancing between the processors. Such tools will also usually allow for high level partitioning, but will also usually have automatic load balancing mechanisms in place that try to maximize CPU utilization. In the end, the multiprocessor system is executing the software in the same way on each processor, but can get real parallelism not found in a single processor system.

The use of such terms is also influenced by how a program is designed because it can be designed to execute as single monolithic beast with a single execution path through it, or it can be specifically designed as a set of independent units that all get started by the program, and do all the work. Such units are called tasks, processes, functions, and even threads. One can enter into debates that a thread is really a light weight process, as opposed to a heavy weight process, but then one starts to get into the boring minutia of how processes are represented by the OS,etc, and this is always context specific, and not worth the time.

All computers and operating systems in use today support very fine grained sharing of the CPU between multiple jobs, tasks, threads, processes, and some even analyze the code instructions at runtime to determine which blocks of instructions can be run out of order.

in simple words multitasking/ multiprogramming conveys single processor and multiprocessing connotes to 2 processors being used to accomplish a task/job.

A minor difference between multitasking and multiprogramming can be understood by help of threads in JAVA where each (more than 1 program) program being run attributes to multiprogramming and each thread within a program connotes to multitasking as they share time with and r run concurrently......

For all the terminologies Multiprogramming is the core. Multiprogramming is the process of loading more than one program into the memory so that processor can be kept busy by switching between any of the loaded programs. Multitasking is derivation of multiprogramming where the operating system treats the programs loaded in the memory as task. But multiprocessing mainly deals with the hardware. Here more than one processing unit (CPU) comes into the picture. Multiprocessing leads to parallel computing.

The difference of these three words/computer jargon is that: 1. Multitasking is the ability of a computer to handle a number of tasks or jobs simultaniously, while multiprogramming is the capacity to run or handle several programs at the same time. Lastly but not the least, multiprocessing is the ability or capacity of a computer to handle or rather solve a particular task in various ways. Hope you will make some sense out of this.

Mutitasking and mutiprogramming are basically one and the same thing, in which the computer handles many tasks or programs simultniously. but multiprocessing is the techniuqe of handling one or more jobs in different ways, like in mutiprocessor architecture.

Multi programing means executing more than one program ,but here when ever the processor is idle during execution of one process it go for execution of another program.Where as in Multitasking,this is a combination of both multi programing and time sharing.means in this it will execute more than one process simultaneously.

The term Multitasking is used when more than one applications/programs/tasks are being run on a single processor. On the other hand, Multi-Processing is the ability to use more than one processor (CPU), on a single machine.

User Avatar

Wiki User

8y ago
This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: What is the difference between multitasking multiprogramming and multiprocessingΣυμβουλή Όταν?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Related questions

Difference between multiprogramming and microprocessing system?

the main difference b/w multiprogramming and multiprocessing O.S. is that the previous one is non-interactive O.S. and the later is interactive O.S. By-Satyam Maheshwari


Differentiate between multiprocessing and multiprogramming?

Multiprocessing means the computer can do multiple processes parallel of each other (at the same time) with no performance degradation. Multiprogramming is an application that can be used to interface with different programming languages (java, C++, etc)


'What is the difference between multiprogramming and multitasking and what is meaning of a task if we consider a task as a program then the concept will be multiprogramming then what is the differenc?

First of all there is difference between program and a task. There may be multiple tasks running related to one program at the same time. so if the processor is busy in multiple tasks related to one program then it is multitasking. But if the multiple tasks which the processor is executing concurrently are related to different independent programs then the concept is know as multiprogramming.


Diffirence between multiprogamming and multitasking?

Multitasking: The ability to execute more than one task at the same time is called multitasking. It involves only one CPU. Multiprogramming: The ability to execute more than one task but not simultaneously is called multiprogramming.


What is the difference between cooperative multitasking and preemptive multitasking?

Cooperative multitasking is multitasking tohelp someone else, while peemative multitasking is multiaatsking for yourself.


What is difference between uni-programming and multiprogramming?

multiprogramming or multitasking means more than one program can execute at the same time. It is the allocation of a computer system and its resources to more than one application at the same time. However in uni-programming you can have only one program running at any point in time.


What is the difference between multiuser multitasking and multiprocessing?

* Multiuser: A computer system the can handle more then one user at a time. Windows is not a multiuser OS. It can handle only one user at a time. * Multitasking: The ability of an OS to do more then one thing at atime. for instance, you can be downloading a large file and still use another program to do something, like write a book. * Multiprocessing: The chip in new computers is able to do more then one task at a time because there is more then one processing unit on/in the chip.


What is the difference between multitasking multiprogramming and multiprocessing in operating systems?

Multi-tasking means doing more than one task at a time; such as printing, burning c.d's, etc. all at the same time. Multi-programming means running more than one program at one time; such as Microsoft word, AOL, Windows Media Player, all at one time. Multi-processing means that your computer can process more than one thing at a time.


Difference between uniprogramming and multiprogramming?

In Multiprogramming it is possible to run several programs at same time rather than one at a time in uniprogramming.. and higher resource utilization.


What is the difference between multiprocessing using two ALUs and multitasking using one ALU?

ALU stands for arithmetic and logic unit. The ALU does complex calculations, so by having two it gets the job done faster. This may not really make a difference if your an average user, although if you do AutoCAD and stuff that requires rendering then it will make a HUGE difference.


What is the difference between multitasking and combing task?

multitasking is doing more than two task or more. And combing task is two task


Difference between time sharing and multitasking and multithreading and multiprocessor?

multitasking: more task execute on sevaral cpumultithreading : sevaral part of one program execution