2. What are the main difference between Micro-Controller and Micro- Processor?

A microcontroller is by definition a is a computer on a chip. It includes all the necessary parts (including the memory) all in one IC. You just need to apply the power (and possibly clock signal) to that device and it starts executing the program programmed to it. A microcontroller generally has the main CPU core, ROM/EPROM/EEPROM/FLASH, RAM and some necessary functions (like timers and I/O controllers) all integrated into one chip. The original idea behind the
microcontroller was to limit the capabilities of the CPU itself, allowing a complete computer (memory, I/O, interrupts, etc) to fit on the available silicon real estate.
Microcontrollers are typically used where processing power isn't so important. More important are generally compact construction, small size, low power consumption and that those chips are cheap. For example controlling a microwave oven is easily accomplished with the smallest of microcontrollers. There is countless number of small
electronic devices which are nowadays based on microcontroller. A modern home can include easily tens or hundreds of microcontrollers, as almost every modern device which has electronics have a microcontroller (or more than one) inside.
Microprocessor is generally just the CPU core itself, although nowadays it might have some accessory parts also integrated to the same chip

3. What are the difference phases of software development or software life cycle?

Specification of the task
Design of algorithms
Implementation (coding)
Testing and debugging
Maintenance and evolution of the system
Obsolescence

4. What is the important aspect of a real-time system or Mission Critical Systems?

A real time operating system has well defined fixed time constraints. Process must be done within the defined constraints or the system will fail. An example is the operating system for a flight control computer or an advanced jet airplane. Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems.Real-Time systems may be either hard or soft real-time.

Hard real-time:
Secondary storage limited or absent, data stored in short term memory, or read-only memory (ROM) Conflicts with time-sharing systems, not supported by general-purpose operating systems.

Soft real-time:
► Limited utility in industrial control of robotics
► Useful in applications (multimedia, virtual reality) requiring advanced operating-system features.

5. What is a Real-Time System?

A real time process is a process that must respond to the events within a certain time period. A real time operating system is an operating system that can run real time processes successfully

7. Explain the difference between microkernel and macro kernel?

Micro-Kernel:
A micro-kernel is a minimal operating system that performs only the essential functions of an operating system. All other operating system functions are performed by system processes.

Monolithic:
A monolithic operating system is one where all operating system code is in a single executable image and all operating system code runs in system mode.

8. Difference between Primary storage and secondary storage?

Main memory:
only large storage media that the CPU can access directly.

Secondary storage:
extension of main memory that provides large nonvolatile storage capacity.

9. Describe different job scheduling in operating systems?

Scheduling is the activity of the deciding when process will receive the resources they request.

FCFS:
FCSFS stands for First Come First Served. In FCFS the job that has been waiting the longest is served next.

Round Robin Scheduling:
Round Robin scheduling is a scheduling method where each process gets a small quantity of time to run and then it is preempted and the next process gets to run. This is called time-sharing and gives the effect of all the processes running at the same time

Shortest Job First:
The Shortest job First scheduling algorithm is a nonpreemptive scheduling algorithm that chooses the job that will execute the shortest amount of time.

Priority Scheduling:
Priority scheduling is a scheduling method where at all times the highest priority process is assigned the resource.

10. What is the difference between a process and a task?

TASK :
A Particular Work to be Done is known as TASK

PROCESS :
one or more PROCESS will be required to complete a task.

11. Give an example of microkernel?

► Amoeba
► WinNT
► Minix

12. What do you mean by deadlock?

Deadlock is a situation where a group of processes are all blocked and none of them can become unblocked until one of the other becomes unblocked. The simplest deadlock is two processes each of which is waiting for a message from the other.

13. What is CPU Scheduler?

► Selects from among the processes in memory that are ready to execute, and allocates the CPU to one of them.
► CPU scheduling decisions may take place when a process:
1.Switches from running to waiting state.
2.Switches from running to ready state.
3.Switches from waiting to ready.
4.Terminates.
► Scheduling under 1 and 4 is nonpreemptive.
► All other scheduling is preemptive.

15. Distributed Systems?

Distribute the computation among several physical processors.
Loosely coupled system each processor has its own local memory; processors communicate with one another through various communications lines, such as high-speed
buses or telephone lines
Advantages of distributed systems:
► Resources Sharing
► Computation speed up load sharing
► Reliability
► Communications

16. Common Functions of Interrupts?

► Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines.
► Interrupt architecture must save the address of the interrupted instruction.
► Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt.
► A trap is a software-generated interrupt caused either by an error or a user request.
► An operating system is interrupt driven.

17. Deadlock Detection-Algorithm Usage?

► When, and how often, to invoke depends on:
How often a deadlock is likely to occur?
How many processes will need to be rolled back?

► If detection algorithm is invoked arbitrarily, there may be many cycles in the resource graph and so we would not be able to tell which of the many deadlocked processes ?caused? the deadlock.

18. What are different tasks of Lexical Analysis?

The purpose of the lexical analyzer is to partition the input text, delivering a sequence of comments and basic symbols. Comments are character sequences to be ignored, while basic symbols are character sequences that correspond to terminal symbols of the grammar defining the phrase structure of the input

19. What is Context Switch?

Switching the CPU to another process requires saving the state of the old process and loading the saved state for the new process. This task is known as a context switch. Context-switch time is pure overhead, because the system does no useful work while switching. Its speed varies from machine to machine, depending on the memory
speed, the number of registers which must be copied, the existed of special instructions(such as a single instruction to load or store all registers).

20. What is the difference between unix and windows?

Unix and Windows use completely different paradigms for run-time loading of code. Before you try to build a module that can be dynamically loaded, be aware of how your system works.

In Unix, a shared object (.so) file contains code to be used by the program, and also the names of functions and data that it expects to find in the program. When the file is joined to the program, all references to those functions and data in the file's code are changed to point to the actual locations in the program where the functions and data are placed in memory. This is basically a link operation.

In Windows, a dynamic-link library (.dll) file has no dangling references. Instead, an access to functions or data goes through a lookup table. So the DLL code does not have to be fixed up at runtime to refer to the program's memory; instead, the code already uses the DLL's lookup table, and the lookup table is modified at runtime to point to the functions and data.

In Unix, there is only one type of library file (.a) which contains code from several object files (.o). During the link step to create a shared object file (.so), the linker may find that it doesn't know where an identifier is defined. The linker will look for it in the object files in the libraries; if it finds it, it will include all the code from that object file.

21. What is Dispatcher?

Dispatcher module gives control of the CPU to the process selected by the short-term scheduler; this involves:
Switching context
Switching to user mode
Jumping to the proper location in the user program to restart that program
Dispatch latency ? time it takes for the dispatcher to stop one process and start another running.

22. What are Dynamic Loading, Dynamic Linking and Overlays?

Dynamic Loading:
► Routine is not loaded until it is called
► Better memory-space utilization; unused routine is never loaded.
► Useful when large amounts of code are needed to handle infrequently occurring cases.
► No special support from the operating system is required implemented through program design.
Dynamic Linking:
► Linking postponed until execution time.
► Small piece of code, stub, used to locate the appropriate memory-resident library routine.
► Stub replaces itself with the address of the routine, and executes the routine.
► Operating system needed to check if routine is in processes? memory address.
► Dynamic linking is particularly useful for libraries.
Overlays:
► Keep in memory only those instructions and data that are needed at any given time.
► Needed when process is larger than amount of memory allocated to it.
► Implemented by user, no special support needed from operating system, programming design of overlay structure is complex.

23. What is the main component of operating system?

Main component of operating system are kernel and shell.

Shell is a interface between application program and kernel whenever application program wants some work to be done It contacts kernel and kernel inturn perform work with the help of device drivers .thus we can say kernel is an interface between hardware and shell.

Kernel uses device drivers to control microcontroller card of peripheral device and inturn work is being accomplished.

application program -> [shells ->kernel ->device driver -> controller card -> physical hardware]

24. What is active directory? How it works?
What is dns? How it works?
What is dhcp? How it works?
What is ias? How it works?

Active is a centralize directory database it's provide single point of administration
what is DHCP
dynamic host configuration protocol
it is one of the network service which is provides the ip address dynamically to the DHCP client
it give ip address automatically to the client
WHAT IS DNS
do mine naming service
it provide ip to host and host to ip

25. On a system with paging, a process cannot access memory that it does not own why? How could the operating system allow access to other memory? Why should it or should it not?

An address on a paging system is a logical page number and an offset. The physical page is found by searching a table based on the logical page number to produce a physical page number. Because the operating system controls the contents of this table, it can limit a process to accessing only those physical pages allocated to the
process. There is no way for a process to refer to a page it does not own because the page will not be in the page table. To allow such access, an operating system simply needs to allow entries for non-process memory to be added to the process?s page table. This is useful when two or more processes need to exchange data?they just read and write to the same physical addresses (which may be at varying logical addresses). This makes for very efficient interprocess communication.

26. Why are page sizes always powers of 2?

Recall that paging is implemented by breaking up an address into a page and offset number. It is most efficient to break the address into X page bits and Y offset bits, rather than perform arithmetic on the address to calculate the page number and offset. Because each bit position represents a power of 2, splitting an address between bits results in a page size that is a power of 2.

27. What is the difference between Hard and Soft real-time systems?

A hard real-time system guarantees that critical tasks complete on time. This goal requires that all delays in the system be bounded from the retrieval of the stored data to the time that it takes the operating system to finish any request made of it. A soft real time system where a critical real-time task gets priority over other tasks and retains that priority until it completes. As in hard real time systems kernel delays need to be bounded

28. What are the major differences between windows XP and Windows 2000 operating systems?

Both Windows XP and 2000 come in different flavors like for XP u have Home,professional and Enterprise Edition.
With 2000 u have professional,Server/s as it professional is more like client pc in Client server Architecture can also be used for development environment XP home for rather general purpose users or say newbies with minimal configuration.

With 2000 server you have all the server capabilities plus on default u might have NTFS system rather than FAT or FAT32. pluse with server u have capabilities of hosting services like DHCP, DNS, TERMINAL SERVICES etc..

There would be a lot if i start explaining in detail but for a creamy part...this is more than enough

29. Explain Segmentation with paging?

Segments can be of different lengths, so it is harder to find a place for a segment in memory than a page. With segmented virtual memory, we get the benefits of virtual memory but we still have to do dynamic storage allocation of physical memory. In order to avoid this, it is possible to combine segmentation and paging into a two-level
virtual memory system. Each segment descriptor points to page table for that segment.This give some of the advantages of paging (easy placement) with some of the advantages of segments (logical division of the program).

30. Explain briefly about, processor, assembler, compiler, loader, linker and the functions executed by them?

Processor:
A processor is the part a computer system that executes instructions .It is also called a CPU

Assembler:
An assembler is a program that takes basic computer instructions and converts them into a pattern of bits that the computer's processor can use to perform its basic operations. Some people call these instructions assembler language and others use the term assembly language.

Compiler:
A compiler is a special program that processes statements written in a particular programming language and turns them into machine language or "code" that a computer's processor uses. Typically, a programmer writes language statements in a language such as Pascal or C one line at a time using an editor. The file that is created contains what are called the source statements. The programmer then runs the appropriate language compiler, specifying the name of the file that contains the source statements.

Loader:
In a computer operating system, a loader is a component that locates a given program (which can be an application or, in some cases, part of the operating system itself) in offline storage (such as a hard disk), loads it into main storage (in a personal computer, it's called random access memory), and gives that program control of the compute

Linker:
Linker performs the linking of libraries with the object code to make the object code into an executable machine code.

31. Describe the actions taken by thread library to context switch between user level threads?

The thread library function performs the following actions to context switch between user level threads Copy all live registers to Thread control Block (TCB) Restore the state of the thread to run next i.e (copy the values of live registers from (TCB) to registers) Move to the next thread to execute

32. Difference between Logical and Physical Address Space?

The concept of a logical address space that is bound to a separate physical address space is central to proper memory management.
Logical address generated by the CPU; also referred to as virtual address.
Physical address address seen by the memory unit.
Logical and physical addresses are the same in compile-time and load-time address-binding schemes; logical (virtual) and physical addresses differ in execution-time address-binding scheme

34. What is starvation and aging?

Starvation:
Starvation is a resource management problem where a process does not get the resources it needs for a long time because the resources are being allocated to other processes.

Aging:
Aging is a technique to avoid starvation in a scheduling system. It works by adding an aging factor to the priority of each request. The aging factor must increase the request?s priority as time passes and must ensure that a request will eventually be the highest priority request (after it has waited long enough)

35. Give a non-computer example of preemptive and non-preemptive scheduling?

Consider any system where people use some kind of resources and compete for them. The non-computer examples for preemptive scheduling the traffic on the single lane road if there is emergency or there is an ambulance on the road the other vehicles give path to the vehicles that are in need. The example for preemptive scheduling is
people standing in queue for tickets.