can anybody tel me about difference between multithreading and multiprogramming.
Multithreading is the ability of a program or an operating system process to manage its use by more than one user at a time and to even manage multiple requests by the same user without having to have multiple copies of the program running in the computer
Whereas multithreading means the different threads in the process to perform similar type of the functions. Let's take one example that in the internet world server accepts the requests from the client side for the videos,audios,images. Now we consider the situation according to the single threaded system,in the busy network where many of the clients request for the same things the server would have provided its facilities to only one of the client but this is not the case with multithreading .this problem is solved bu the multithreading
Involves tasks sharing one resource. Threads are subprocesses These subprocesses share memory. Although these subprocesses share a memory, they are independently scheduled. It’s important to remember that separate processes cannot share each other’s memory.
Involves a computer running more than one program eg Excel and Chrome. This is a form of multitasking. Here, a process will keep running till it tries to access an I/O device. When it tries to access an I/O, the operating system interrupts that job and another process is chosen to run so the CPU doesn't stay idle.
Multiprogrammig and Multithreading both adds performance to the system. Multiprogramming is adding more number of or CPUs/processors to the system which increases the computing speed of the system. Multithreading is allowing a process to create more threads which increase the responsiveness of the system.
In most of the computer applications multiprogramming and multi threading are used to improve the response time of the system while performing multiple operations or programs. Multiprogramming is a method of running multiple programs over a single processor by sharing the processor time in the time sharing environment. While multithreading is the process of running multiple threads to execute concurrently, supported by operating system.
Multiprogramming is a primitive type of parallel processing in which a uniprocessor runs multiple programs simultaneously. Because there is only one processor, separate programs can not really be executed authentically simultaneously.
Multithreading: It can be said that threads are separate parts of a single program that can operate on a single processor.
Multiprogramming is simultaneous execution of multiple programs at the same time on a uniprocessor. These reduces our time in executing multiple programs one after the other. For example we on music on the background and we play games so both programs are run at the same time.
Multi threading is executing multiple threads at the same time. Where thread refers to dividing the process into sub processes and each sub process is called as threads.
@Kaustubh Katdare · Sep 16, 2015
@ravitejabhukya · Feb 6, 2012
@Bishshoy Das · Jul 2, 2011