
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Found 2003 Articles for Operating System

3K+ Views
Threads are created in the Windows API using the CreateThread() function, and—just as in Pthreads—a set of attributes like security information, the size of the stack, and a flag for the thread is passed to this function. In the below program, we use the default values for these attributes. (The default values do not initially set the thread to a suspended state and instead make it eligible to be run by the CPU scheduler.) Once the summation thread is created, the parent must wait for it to complete before outputting the value of Sum, as the value is set by ... Read More

2K+ Views
Pthreads refers to the POSIX standard (IEEE 1003.1c) defining an API for thread creation and synchronization, which is a specification for thread behavior, not an implementation. This specification may be implemented by Operating-system designers in any way they wish. The C program shown in below, demonstrates the basic Pthreads API for constructing a multithreaded program that calculates the summation of a nonnegative integer in a separate thread. Separate threads begin execution in a specified function, in a Pthreads program. In below program, this is the runner() function. When the program begins, a single thread of control begins in main(). main() ... Read More

1K+ Views
The trend towards multicore systems continues to place pressure on system designers and application programmers to create higher use of the multiple computing cores. Designers of operational systems should write programing algorithms that use multiple process cores to permit the parallel execution shown in below Figure −Figure: Parallel execution on a multicore systemFor application programmers, the challenge is to switch existing programs with its style new programs that are multithreaded. In general, 5 areas of challenges are there in programming for multicore systems −Identifying tasks − This involves examining applications to seek out areas that may be divided into separate, ... Read More

3K+ Views
Context Switching involves storing the context or state of a process or thread so that it can be reloaded when required and execution can be resumed from the same point as earlier. This is a feature of a multitasking operating system and allows a single CPU to be shared by multiple processes.Actions taken by a kernel to context-switch between kernel-level threads are-Context switching between kernel threads typically requires saving the value of the CPU registers from the thread being switched out and restoring the CPU registers of the new thread being scheduled.

9K+ Views
Actions taken by a kernel to context-switch between processes are -The OS must save the PC and user stack pointer of the currently executing process, in response to a clock interrupt and transfers control to the kernel clock interrupt handlerSaving the rest of the registers, as well as other machine state, such as the state of the floating point registers, in the process PCB is done by the clock interrupt handler.The scheduler to determine the next process to execute is invoked the OS.Then the state of the next process from its PCB is retrieved by OS and restores the registers. ... Read More

2K+ Views
Advanced Local Procedure Call(ALPC) is a message-passing mechanism. A globally visible connection-port object is published by the server process. When a client wants services from a subsystem or service, it opens a handle to the server’s connection-port object and sends a connection request to the port. A channel is created by the server and returns a handle to the client. This channel consists of a pair of private communication ports: one for client-to-server messages and the other for server-to-client messages. Communication channels support a callback mechanism, so the client and server can accept requests when they would normally be expecting ... Read More

3K+ Views
Remote Procedure Call (RPC) is a client-server mechanism that enables an application on one machine to make a procedure call to code on another machine. The client calls a local procedure—a stub routine—that packs its arguments into a message and sends them across the network to a particular server process. The client-side stub routine then blocks. Meanwhile, the server unpacks the message, calls the procedure, packs the return results into a message, and sends them back to the client stub. The client stub unblocks, receives the message, unpacks the results of the RPC, and returns them to the caller. This ... Read More

2K+ Views
Context switching involves storing the context or state of a method or thread in order that it will be reloaded once needed and execution will be resumed from constant purpose as earlier. This can be a feature of a multitasking software system and permits one computer hardware to be shared by multiple processes.When Associate in Nursing interrupt happens, the hardware mechanically switches a region of the context. The handler could save further context, counting on details of the actual hardware and software package styles. Typically, solely a minimal part of the context is modified so as to reduce the quantity ... Read More

353 Views
DefinitionThe Microsoft Interface Definition Language (MIDL) defines interfaces between client and server programs. The MIDL compiler with the Platform Software Development Kit (SDK) to enable developers to create the interface definition language (IDL) files and application configuration files (ACF) required for Remote Procedure Call (RPC) interfaces and COM/DCOM interfaces are included with Microsoft. MIDL also supports the generation of type libraries for OLE Automation.ApplicationMIDL can be used in all client/server applications based on Windows operating systems. To create client and server programs for heterogeneous network environments that include such operating systems as Unix and Apple, MIDL can also be used. ... Read More

1K+ Views
In Linux, when an executable stored on disk is called a program, and a program loaded into memory and running is called a process. A process is given a unique number called process ID (PID) that identifies that process to the system, when it is started. If we ever need to kill a process, for an example, we can refer to it by its PID. As each PID is unique, there is no ambiguity or risk of accidentally killing the wrong process (unless you enter the wrong PID).If we open top (in a terminal, type top and press enter), the ... Read More