In this lecture we will learn:
– Working of an operating system
– What is multitasking in Java
– Time-sharing process in CPU
– What are threads in Java?
– Multithreading in Java
#1
– When you run an application, the software that you have written will be running on an OS( Operating System).
– Below the OS, a layer is present that is known as Hardware.
– Software will always run on hardware.
– Hardware consists of:
RAM – acts as a temporary memory for processing
CPU – that executes something (processing done here)
– OS supports multiple software working at the same time and it means it supports Multitasking.
– Multitasking:
Multitasking is the ability of the CPU to perform multiple tasks simultaneously. There will be continuous context switching of the CPU between the tasks.
– CPU has a concept of time sharing which means each process runs for some short period of time one by one. The software runs parallelly by sharing the time in the CPU.
#2
– We can also divide our tasks into small units.
– In the same task or a program, we can have multiple threads running at the same time.
– Thread is light-weight and it is the smallest unit of a task.
– Multithreading:-
Multithreading is a system in which many threads are created from a process through which the computer power is increased.