What is multi-tasking, multi-programming,multi-threading?
Answer Posted / vkin
Multiprogramming is the technique of running several
programs at a time using timesharing. It allows a computer
to do several things at the same time. Multiprogramming
creates logical parallelism. The concept of
multiprogramming is that the operating system keeps several
jobs in memory simultaneously. The operating system selects
a job from the job pool and starts executing a job, when
that job needs to wait for any i/o operations the CPU is
switched to another job. So the main idea here is that the
CPU is never idle.
Multi tasking:
Multitasking is the logical extension of
multiprogramming .The concept of multitasking is quite
similar to multiprogramming but difference is that the
switching between jobs occurs so frequently that the users
can interact with each program while it is running. This
concept is also known as time-sharing systems. A time-
shared operating system uses CPU scheduling and
multiprogramming to provide each user with a small portion
of time-shared system.
Multi threading:
An application typically is implemented as a separate
process with several threads of control. In some situations
a single application may be required to perform several
similar tasks for example a web server accepts client
requests for web pages, images, sound, and so forth. A busy
web server may have several of clients concurrently
accessing it. If the web server ran as a traditional single-
threaded process, it would be able to service only one
client at a time. The amount of time that a client might
have to wait for its request to be serviced could be
enormous. So it is efficient to have one process that
contains multiple threads to serve the same purpose. This
approach would multithread the web-server process, the
server would create a separate thread that would listen for
client requests when a request was made rather than
creating another process it would create another thread to
service the request. To get the advantages like
responsiveness, Resource sharing economy and utilization of
multiprocessor architectures multithreading concept can be
used.
| Is This Answer Correct ? | 200 Yes | 15 No |
Post New Answer View All Answers
What is context in operating system?
what is the difference between mutexes and semaphores?
What is critical section problem?
Enumerate the different RAID levels.
Explain the difference between logical & physical address.
Give a non-computer example of preemptive and non-preemptive scheduling?
Is it safe to delete ost file?
What is tcl timing?
What is a virtual memory?
What is a monitor?
What do you mean by ram?
Describe the Operating System concept of Fragmentation
Name the functions constituting the os's memory management.
What is dynamic scheduling in operating system (os)?
What are the states associated with the thread?