A thread is a small unit of CPU utilisation. It comprises a thread ID, a program counter, a register set and a stack. It shares with other threads which belong to the same process having code segment, data section and other operating system resources like open files and signals.A heavy weight process has a single thread of control. If a process has multiple threads of control, it can perform more than one task at a time. Many software packages that run in modern PC’s are multi-threaded. Here, the application is implemented as a separate process with several threads of control.For ... Read More
Micro kernel is one of the classifications of kernel and is often represented as μ- kernel. It is software which provides a mechanism to implement an operating system.The functions or mechanism for implementation are as follows −Inter-process communicationThread managementLow level address space managementIn the micro kernel, user services and kernel services are kept in different address spaces. User services are placed in user address space. Kernel services are placed in kernel services. Therefore, the size of the kernel and size of the operating system is minimized or reduced.Given below is the diagram of micro kernel −It is very secure and ... Read More
Process scheduler assigns different processes to CPU based on particular scheduling algorithms.Types of Process Scheduling AlgorithmsThe different types of process scheduling algorithms are as follows −FCFSAs the name goes, jobs are executed on a first come first serve basis. It’s a simple algorithm based on FIFO that's first in first out. It is pre-emptive and non pre-emptive and its performance is poor based on its average waiting time.SJFIt is also known as the shortest job first or shortest job next. It is a pre-emptive and non pre-emptive type algorithm that is easy to implement in batch systems and is best ... Read More
Process scheduler is a part of the Operating system which schedules the process. If the process is in ready, waiting and running state it schedules it correctly and is also responsible for the allocation of the CPU processor to a specific task within a time interval.Also, when the task or process is completed it doesn't allow the CPU to sit idle. It will allocate the other task depending on its current state. If the process was in ready state it will allocate it to the CPU in this way it always keeps the CPU busy all of the time.Characteristics of ... Read More
We can discuss some of the issues to consider in designing multithreaded programs. These issued are as follows −The fork() and exec() system callsThe fork() is used to create a duplicate process. The meaning of the fork() and exec() system calls change in a multithreaded program.If one thread in a program which calls fork(), does the new process duplicate all threads, or is the new process single-threaded? If we take, some UNIX systems have chosen to have two versions of fork(), one that duplicates all threads and another that duplicates only the thread that invoked the fork() system call.If a ... Read More
Distributed Operating System is a type of model where applications are running on multiple computers linked by communications. It is an extension of the network operating system which supports higher levels of communication and integration of the machines on the network.Distributed OS runs on multiple CPUs but for an end-user, it is just an ordinary centralized operating system. It can share all resources like CPU, disk, network interface, nodes, computers, etc. from one site to another site, and it increases the data available on the entire system.All processors are connected by valid communication media such as high-speed buses and telephone ... Read More
A thread is a lightweight of process and is a basic unit of CPU utilization which consists of a program counter, a stack, and a set of registers.Given below is the structure of thread in a process −A process has a single thread of control where one program can counter and one sequence of instructions is carried out at any given time. Dividing an application or a program into multiple sequential threads that run in quasi-parallel, the programming model becomes simpler.Thread has the ability to share an address space and all of its data among themselves. This ability is essential ... Read More
Multithreading is a process divided into a number of smaller tasks. Each task is represented or called it as a “Thread”. That means a thread is a lightweight of process. A number of such threads within a process executes at a time is called “multithreading”.The operating system’s additional capability is supporting multithreading.Based on the functionality, threads are divided into four categories and these are given below −One process, one thread.One process, multiple threads.Multiple processes, one thread per process.Multiple processes, multiple threads per process.Let us see how the above functionality represents in the pictorial form −One process, one thread − It ... Read More
Kernel is a part of the operating system. It interacts directly with the hardware of the computer with the help of a device that is built into the kernel.Functions of KernelThe functions of the kernel are as follows −Memory managementControlling access to the computer.Maintaining the file system.Handling interruptsHandling errorsPerforming input and output services.Kernel allocates the resources of the computer of users.The kernel is the most important part of the Architecture of Unix OS.Generally, program executes in two modes, which are as follows −User mode − Cannot access any hardware resources, which perform only the user operations.Kernel mode − Can access ... Read More
A thread is a lightweight of process. It is a basic unit of CPU utilization which consists of a program counter, a stack, and a set of registers.Given below is the structure of single threaded process −Thread in user spaceNow, let us see how to implement thread in User Space.Step 1 − The complete thread package is placed in the user space and the kernel has no knowledge about it.Step 2 − Kernel generally, manages ordinary and single threaded processes.Step 3 − Threads are always run on top of a run-time system.Step 4 − Run time system is a collection ... Read More
 
 Data Structure
 Data Structure Networking
 Networking RDBMS
 RDBMS Operating System
 Operating System Java
 Java MS Excel
 MS Excel iOS
 iOS HTML
 HTML CSS
 CSS Android
 Android Python
 Python C Programming
 C Programming C++
 C++ C#
 C# MongoDB
 MongoDB MySQL
 MySQL Javascript
 Javascript PHP
 PHP