Posts

A BRIEF HISTORY OF COMPUERS:

Image
First Generation: Vacuum Tubes  ENIAC The ENIAC (Electronic Numerical Integrator And Computer), designed and constructed at the University of Pennsylvania, was the world’s first general-purpose electronic digital computer. The project was a response to U.S needs during World War II. John Mauchly, a professor of electrical engineering at the University of Pennsylvania, and John Eckert, one of his graduate students, proposed to build a general-purpose computer using vacuum tubes for the BRL’s application. In 1943, the Army accepted this proposal, and work began on the ENIAC. The resulting machine was enormous, weighing 30 tons, occupying 1500 square feet of floor space, and containing more than 18,000 vacuum tubes. When operating, it consumed 140 kilowatts of power. It was also substantially faster than any electromechanical computer, capable of 5000 additions per second. The ENIAC was completed in 1946, too late to be used in the war effort. The use of the ENIAC for a pur...

1).What is Asynchronous concurrent processes? 2). Explain the difference between concurrency and synchronization?

Image
 1)  Synchronization: means acquiring a reentrant lock on an object. The lock is released when either end of synchronized block is reached or thread goes into waiting state. The lock is reentrant in the sense that the same thread can acquire the lock again and again but a different thread cannot. So synchronized keyword essentially guards a piece of code from being accessed by multiple threads simultaneously Concurrency:   collections are exactly opposite. They are called so because they allow multiple threads to concurrently access the same data (without causing a side effect). For example, concurrent Hash Map allows multiple threads to perform write operations in parallel as long as the writes are happening on different segments. ******************************************** 2). Message Passing Interface (MPI) is a communication protocol for parallel programming. MPI is specifically used to allow applications to run in parallel across a number of sep...

Multitasking is performed in every OS, Explain one with the help of images diagram?

Image
  Multitasking term used in a modern computer system. Multitasking is a logical extension of a multiprogramming system that supports multiple programs to run concurrently. In a  multitasking operating system , more than one task is executed at the same time. In this technique, multiple tasks, also known as processes, share common processing resources such as a CPU. Types of Multitasking Operating System: There are two types of multitasking operating system Cooperative Multitasking: Windows and Mac OS used cooperative multitasking. A Windows program would do some small unit of work in response to a message and then relinquish the CPU to the operating system until the program got another message. That worked well, as long as all programs were written with consideration for other programs and had no  bugs . Preemptive Multitasking: Desktop operating systems use preemptive multitasking. Unix used this form of multitasking from the beginning. Windows starting using pr...

State the main difference in Microsoft windows GUI and MAC GUI?

  In present times, it is not uncommon to have a desktop with two or more monitors. How these operating systems perform in a multiple monitor environment is an interesting topic. In this work, we will evaluate the efficiency of and compare how two popular operating systems, Windows and Mac OS, perform in large and multiple monitor environments. In particular, we will evaluate the performance of menu bars in both operating systems as they serve a near identical purpose and have the same functionality while providing their offerings differently. It is well-known that Mac OS uses a menu bar at the top of the screen (global) and Windows uses a menu bar attached to the top of its respective application (local).  The conducted user study shows that the overall performance of Windows menu bar was better than that of the Mac menu bar implementation in the conducted tests .

What is interprocess communication?

Image
  Interprocess communication is the mechanism provided by the operating system that allows processes to communicate with each other. This communication could involve a process letting another process know that some event has occurred or the transferring of data from one process to another . A diagram that illustrates interprocess communication is as follows –

Explain with the help of an example the distributed Coordination in OS?

  Definition   – In this article, we will fully  explain distributed operating system . Distributed operating system allows distributing of entire systems on the couples of center processors, and it serves on the multiple real time products as well as multiple users.   All processors are connected by valid communication medium such as high speed buses and telephone lines, and in which every  processor  contains own loca l  memory  along with other local processor. According this nature, distributed operating system is known as loosely coupled systems. This  operating system  involves multiple computers, nodes, and sites, and these components are linked each other with LAN/WAN lines. Distributed OS is capable for sharing their computational capacity and I/O files with allowing the virtual machine abstraction to users. Types of Distributed Operating System Classification of distributed operating system  Can be done in thr...

How dose concurrent programming is done in operating system?

Image
  Concurrent processing  is a computing model in which multiple processors execute instructions simultaneously for better performance. Concurrent means, which occurs when something else happens. The tasks are broken into sub-types, which are then assigned to different processors to perform simultaneously, sequentially instead, as they would have to be performed by one processor. Concurrent processing is sometimes synonymous with parallel processing. The term real and virtual concurrency in concurrent processing: 1.     Multiprogramming Environment : In multiprogramming environment, there are multiple tasks shared by one processor. while a virtual concert can be achieved by the operating system, if the processor is allocated for each individual task, so that the virtual concept is visible if each task has a dedicated processor. The multilayer environment shown in figure.’ 1.          2  . Multiprocessing Environment : In multi...