Sunday, 21 June 2015

tips on improving your english


                                                               * TIPS ON Improving Your English
             *Contents:-

          1. How can I help my one-on-one conversation partners with their english?
           2.How can I have a great conversation in English?
           3.How can I improve my English?
           4.What online resources can help me with my English?

                                                                     *How to improve my conversation skills?

                 1.Don’t be shy and self-conscious!
                 2.Communication errors can be solved.
                3.A conversation is an interactive activity involving listening and speaking from both parties.
                4.It’s all about listening and asking question.
                5.Do some research!
                6.Lulls are normal.'
                7.If a conversation is going wrong, it may not be your fault.
            
                                                             *How to introduce myself?
            
                        1.Greet with smile
                       2.Maintain eye contact
                       3.Give a firm handshake
                       4.Tell your name
                       5.Ask for the other person’s name
                       6.Repeat the other person’s name
                        7.Never draw a negative picture of yourself
                                                  
                                                             *How to have a great conversation?
                        1.Relax and forget about yourself
                       2.Listen
                      3.Ask questions
                      4.Use a friendly tone
                      5.Choose your words and questions carefully
                      6.Avoid controversial and intimate topics as well as arguments
                     7.Neither interrupt a person in the middle of his thought, nor speak on top of it
                     8.Compliment the other person
                     9.Thank for a great conversation  
                          
                                                   *How to handle a difficult question?
                        1. Personal, intimate question
                        I’m sorry, but I’d prefer not to answer this question.
                         2.Question you don’t know the answer
                         I have no idea.
                        3.Question you didn’t catch
                       Can you repeat the question?
                      4.Question you don’t understand because of unfamiliar words or question structure
                         I’m sorry, but I don’t understand your question. Would you mind telling it in different words?/What do you mean by…?/What does…mean?

                                                    *How to avoid awkward lulls?

                                          1.Move on to another topic
                                          2.Ask questions for clarity
                                         3.Find common interests
                                         4.Compliment the other person
                                         5.Observe any visual clues to draw a topic out
                                        6.If an awkward lull happens, correct it by saying the following: I am thinking of what we have just talked about. And paraphrase what you have been talking about.

                                                *How can I improve my English?
                                   1.Be active and set goals for improving your English!
                                    2.A language is not only speaking, but a combination of speaking, listening, reading and writing, including grammar.
                                 3.Use different learning styles such as visual, auditory to  achieve your objectives.

                                              *Resources:-
                    1.Learn English Free Online:
                       http://www.learnenglish.de
       
                    2.Learn American English Online:
                       www.learnamericanenglishonline.com
                 3.Learn Languages for Free Online:
                     http://www.busuu.com
                     4.English Club:
                         http://www.busuu.com
                                        
                                        *How to improve speaking?
                         1.Listening and reading aloud
                         2.Writing
                         3.Networking and making friends

                         4.Greeting people on the street
                         5.Having small talks in public
                        6.Watching foreign movies with English subtitles
                         7.Joining one-on-one conversations, conversation and common interest groups.

                                                      *Resources:-

                                            1.Daily Conversations:
                                                 http://www.worldenglishclub.com/daily-english-conversations
                                            2.EBooks:
                                                 http://www.gutenberg.org
                                        3.Phrases and Expressions for Speaking:
                                             http://www.eslgold.com/speaking/phrases.html
                                                     
                                                *How to improve listening?

                      1.Speaking to English speakers
                      2.Watching TV and movies
                      3.Listening to radio
                      4.Reading audio books
                      5.Singing English songs
                      6.Practicing pronunciation
                       7.Joining conversation groups/one-on-one conversations

                                                     *Resources:-
                                            1.Listening Lab:
                                                http://www.esl-lab.com
                                             2.Listening Activities:
                                               http://www.manythings.org/e/listening.html
                                              3.Audio Books:
                                                   http://librivox.org
                                                   http://www.audiobooks.org
                                                    http://www.audiobooks.net

                                                             *How to improve comprehension?

                               1.Reading picture books or comics
                                2.Reading newspapers and magazines
                                   3.Asking questions during conversations
                                  4.Watching TV and movies
                                 5.Browsing English websites

                                6.Consulting dictionaries
                                 7.Constantly learning new words
       
                                  8.Clarifying meaning of slang and idioms
                                 9.Knowing grammar
                                    
                                                         *Resources:-
                                      1.Idioms:
                                        http://www.idiomconnection.com
                                      2.Reading Comprehension Exercises:
                                         http://www.englishcorner.vacau.com/reading/reading.html
                                       3.Listening Comprehension Exercises:
                                         http://www.learnenglishfeelgood.com/eslvideo/
                                       4.Vocabulary Games:
                                         http://www.vocabulary.co.il

                                                                *How to improve pronunciation?
                                        1.Listening to native English and imitating.
                                       2.Reading along with audio books.

                                       3.Speaking, being corrected or asking for correct pronunciation and repeating after.
                                        4.Paying attention to letter combination sounds, stressed syllables, word linkage and intonation.
                                       5.Training speech organs position, shape and movement of English sounds.
                                                      
                                                *Resources:-
                                          1. Accent School:
                                              http://www.accentschool.com/run_software.html
                                         2.Some Pronunciation Rules:
                                            http://www.englishclub.com/pronunciation/index.htm
                                            http://www.fonetiks.org
                                       3.Pronunciation Exercises:
                                          http://www.pronunciationworkshop.com/pronunciationexercises.htm
                                          http://www.englishmedialab.com/pronunciation.html
                                          http://www.learnersdictionary.com/pronex/pronex.htm
                                          http://www.manythings.org/pp/

                                       4.Dictionaries with Pronunciation:
                                           http://www.merriam-webster.com
                                           http://www.howjsay.com
                                           http://www.thefreedictionary.com
                                           http://dictionary.cambridge.org

                                           *How to improve grammar?

                           1.Reading, listening, writing and speaking
                           2.Using subject-verb structure
                           3.Differentiating questions from statements
                           4.Understanding parts of speech
                          5.Practicing verb tenses
                          6.Knowing words beyond their meaning
                         7.Learning phrasal verbs
                          8.Doing grammar exercises.
                          9.Quizzing yourself
                                                 
                                                 *Resources:-

                          1.English Grammar Exercises and Tests:
                                 http://world-english.org
                         2.English Grammar:
                                http://www.manythings.org/e/grammar.html
                       3.English Grammar Quizzes:
                               http://www.usingenglish.com/quizzes/
                               http://a4esl.org/a/v.html
                       4.English Study Zone:
                          http://web2.uvcs.uvic.ca/courses/elc/studyzone/
                      5.English Grammar Rules and Exercises:
                         http://www.musicalenglishlessons.org/index-ex.html
                       6.Phrasal Verbs:
                             http://www.englishpage.com/prepositions/verb_preposition.html
                             http://www.learn-english-today.com/phrasal-verbs/phrasal-verb-list.html
                             http://www.englishclub.com/vocabulary/phrasal-verbs-list.html
                             http://grammar.ccc.commnet.edu/grammar/phrasals.html

                                                 *How to improve reading?

                             1.Reading audio books.
                             2.Watching movies with subtitles.
                             3.Listening to songs and following their lyrics.
                             4.Learning letter/letter combination sounds.
                             5.Stressing words correctly.
                             6.Paying attention to punctuation signs.
                             7.Slowing down and pronouncing every single word as well as word endings.

                                                                *Resources:-

                                              1.Listen and Read Along:
                                                   http://www.manythings.org/listen
                                              2.Phonics Games:
                                                      http://www.vocabulary.co.il/phonics
                                                      http://www.familylearning.org.uk/phonics_games.html

                                             3.Songs and Lyrics:
                                                        http://www.isabelperez.com/songs.html
                                                        http://www.songsforteaching.com/esleflesol.html

                                                                *How to improve writing?

                                              1.Reading, listening and speaking.
                                              2.Learning English grammar and vocabulary.
                                              3.Understanding the basic subject-verb sentence structure
                                              4.Using correct spelling
                                              5.Analyzing frequently misspelled words
                                              6.Making use of grammar and spell check
                                              7.Punctuating correctly
                                               8.Blogging, text messaging or having pen friends.

                                                         *Resources:-

                                                1.Blogging Sites:
                                                       www.blogger.com
                                                       www.blogtopsites.com
                                                 2.ESL Blogging:
                                                       http://www.eslgo.com/conversation/
                                                 3.Spelling Games:
                                                       http://www.vocabulary.co.il/spelling
                                                 4.Punctuation Rules:
                                                            http://www.englishclub.com/writing/punctuation.htm
                                                            http://www.angelfire.com/blues/writing/punctuation.html
                                                            http://www.wikihow.com/Use-English-Punctuation-Correctly
                                                            http://esl.about.com/od/englishgrammar/a/a_punctuation.htm
                                                            http://grammar.about.com/od/punctuationandmechanics/a/punctrules.htm


           



































   




onlinenotesforeng.blodspot.com

Wednesday, 10 June 2015

PROCESS MANAGEMENT

             

                      *PROCESS MANAGEMENT:-


              *What is a Process? 


A process is sequential program in execution. A process defines the fundamental unit of computation for the computer. Components of process are :-

1. Object Program
2. Data
3. Resources
4. Status of the process execution. 


  Object program i.e. code to be executed. Data is used for executing the program. While executing the program, it may require some resources. Last component is used for verifying the status of the process execution. A process can run to completion only when all requested resources have been allocated to the process. Two or more processes could be executing the same program, each using their own data and resources.

              *Process & Program:-


1.Process:-

            it is a dynamic entity, that is a program in execution. A process is a sequence of information executions. Process exists in a limited span of time. Two or more processes could be executing the same program, each using their own data and resources.

2.Program:-

             it is a static entity made up of program statement. Program contains the instructions. A program exists at single place in space and continues to exist. A program does not perform the action by itself.

                      *Thread


A thread is a flow of execution through the process code, with its own program counter, system registers and stack. Threads are a popular way to improve application performance through parallelism. A thread is sometimes called a light weight process. Each thread belongs to exactly one process and no thread can exist outside a process. Each thread represents a separate flow of control.

               *Types of Thread :-


Threads is implemented in two ways :-

1.User Level:-

                In a user thread, all of the work of thread management is done by the application and the kernel is not aware of the existence of threads. The thread library contains code for creating and destroying threads, for passing message and data between threads, for scheduling thread execution and for saving and restoring thread contexts.


2.Kernel Level :-

                   In Kernel level thread, thread management done by the Kernel. There is no thread management code in the application area. Kernel threads are supported directly by the operating system. Any application can be programmed to be multithreaded.

                      *Process State:-


As a process executes, it changes state

1.New :-

         A process that just been created.

2.Ready :-

            Ready processes are waiting to have the processor allocated to them by the operating system so  that they can run.

3.Running :-

             The process that is currently being executed. A running process possesses all the resources needed for its execution, including the processor.

4.Waiting :-

              A process that can not execute until some event occurs such as the completion of an I/O operation. The running process may become suspended by invoking an I/O module.

5.Terminated :-

                A process that has been released from the pool of executable processes by the operating system.

Whenever processes changes state, the operating system reacts by placing the process PCB in the list that corresponds to its new state. Only one process can be running on any processor at any instant and many processes may be ready and waiting state.


                        *Suspended Process:-


Suspended process is not immediately available for execution.The process may or may not be waiting on an event.For preventing the execution, process is suspend by OS, parent process, process itself.

Reasons for process suspension :-

1.Swapping

2.Timing

3.Interactive user request

4.Parent process request


                            1.Swapping :-


OS needs to release required main memory to bring in a process that is ready to execute.

                           2.Timing :-


  Process may be suspended while waiting for the next time interval.

                       3.Interactive user request :-


 Process may be suspended for debugging purpose by user.

                         4.Parent process request :-


 To modify the suspended process or to coordinate the activity of  various descendants.

                       *Process Control Block (PCB)


Each process contains the process control block (PCB). PCB is the data structure used by the operating system. Operating system groups all information that needs about particular process.

1.Pointer :-

           Pointer points to another process control block. Pointer is used for maintaining the scheduling list.

2.Process State :-

                   Process state may be new, ready, running, waiting and so on.

3.Program Counter :-

                    It indicates the address of the next instruction to be executed for this process.

4.Event information :-

                       For a process in the blocked state this field contains information concerning the event for which the process is waiting.

5.CPU register :-

                 It indicates general purpose register, stack pointers, index registers and accumulators etc. number of register and type of register totally depends upon the computer architecture.

6.Memory Management Information :-

                                  This information may include the value of base and limit register. This information is useful for deallocating the memory when the process terminates.

7.Accounting Information :-

                         This information includes the amount of CPU and real time used, time limits, job or process numbers, account numbers etc.

                    *Process Scheduling:-


Multiprogramming operating system allows more than one process to be loaded into the executable memory at a time and for the loaded process to share the CPU using time multiplexing. The scheduling mechanism is the part of the process manager that handles the removal of the running process from the CPU and the selection of another process on the basis of particular strategy.


                       *Process Scheduling Queues:-


When the process enters into the system, they are put into a job queue. This queue consists of all processes in the system. The operating system also has other queues. Device queue is a queue for which a list of processes waiting for a particular I/O device. Each device has its own device queue. Queue is represented by rectangular box. The circles represent the resources that serve the queues. The arrows indicate the flow of processes in the system.

1.Job queue :–

                set of all processes in the system.


2.Ready queue :– 

                 set of all processes residing in main memory, ready and waiting to execute.

3.Device queues :–

                      set of processes waiting for an I/O device.Process migration between the various queues.

                        *Schedulers:-


A process migrate between the various scheduling queues throughout its lifetime. The operating system must select, for scheduling purposes, processes from theses queues in some fashion. The selection process is carried out by the appropriate scheduler. Types of schedules:

1.Long Term Scheduler
2.Short Term Scheduler
3.Medium Term Scheduler 


                       *Long Term Scheduler :-


It is also called job scheduler. Long term scheduler determines which programs are admitted to the system for processing. Job scheduler selects processes from the queue and loads them into memory for execution. Process loads into the memory for CPU scheduler. The primary objective of the job scheduler is to provide a balanced mix of jobs, such as I/O bound and processor bound. It also controls the degree of multiprogramming. When process changes the state from new to ready, then there is a long term scheduler.

                   *Short Term Scheduler:-


It is also called CPU scheduler. Main objective is increasing system performance in accordance with the chosen set of criteria. It is the change of ready state to running state of the process. CPU scheduler selects from among the processes that are ready to execute and allocates the CPU to one of them. Short term scheduler also known as dispatcher, execute most frequently and makes the fine grained decision of which process to execute next. Short term scheduler is faster than long tern scheduler.

                    *Medium Term Scheduler :-


Medium term scheduling is part of the swapping function. It removes the processes from the memory. It reduces the degree of multiprogramming. The medium term scheduler is in charge of handling the swapped out-processes.

                    *Context Switch:-


When the scheduler switches the CPU from executing one process to executing another, the context switcher saves the content of all processor registers for the process being removed from the CPU in its process being removed from the CPU in its process descriptor. The context of a process is represented in the process control block (PCB) of a process. Context switch time is pure overhead. Context switching can significantly affect performance.

1.Program Counter
2.Scheduling Information
3.Base and limit register value
4.Currently used register
5.Changed State
6.I/O State
7.Accounting


                     *Operation on Process:-


Several operations are possible on the process. Process must be created and deleted dynamically. Operating system must provide the environment for the process operation. We discuss the two main operations on processes.

1.Create a process

2.Terminate a process


                         *Process Creation:-


Operating system creates a new process with the specified or default attributes and identifier. A process may create several new subprocesses. Syntax for creating new process is :
CREATE ( processed, attributes )
Two names are used in the process they are parent process and child process.  Parent process is a creating process. Child process is created by the parent process. Child process may create another subprocess. So it forms a tree of processes. When operating system issues a CREATE system call, it obtains a new process control block from the pool of free memory, fills the fields with provided and default parameters, and insert the PCB into the ready list. Thus it makes the specified process eligible to run the process.

            When a process creates a new process, two possibilities exist in terms of execution.

1.The parent continues to execute concurrently with its children.

2.The parent waits until some or all of its children have terminated.

For address space, two possibilities occur:-

1.The child process is a duplicate of the parent process.

2.The child process has a program loaded into it.

            *Process Termination:-


DELETE system call is used for terminating a process. A process may delete itself or by another process. A process can cause the termination of another process via an appropriate system call. The O/S reacts by reclaiming all resources allocated to the specified process, closing files opened by or for the process. PCB is also removed from its place of residence in the list and is returned to the free pool. The DELETE service is normally invoked  as a part of orderly program termination.

  Following are the resources for terminating the child process by parent process.

1.The task given to the child is no longer required.

2.Child has exceeded its usage of some of the resources that it has been  allocated.

3.Operating system does not allow a child to continue if its parent terminates.


                         *Cooperating Processes:-


Co-operating process is a process that can affect or be affected by the other processes while executing. If suppose any process is sharing data with other processes, then it is called co-operating process. Benefit of the co-operating processes are :

1.Sharing of information

2.Increases computation speed

3.Modularity

4.Convenience

              *Interprocess Communication (IPC):-


Cooperating processes require an interprocess communication (IPC) mechanism that will allow them to exchange data and information. There are two fundamental models of interprocess communication:

1.Shared memory:
                In the shared-memory model, a region of memory that is shared by cooperating processes is established. Processes can then exchange information by reading and writing data to the shared region.

2.Message passing:
                     In this communication takes place by means of messages exchanged between the cooperating processes.























OPERATING SYSTEM

                         

                     OPERATING SYSTEM


                    *Introduction:-


Computer System: Computer System consists of software and hardware that are combined to provide a tool to solve specific problems. Software differentiate according to its purpose.

                 *Application Software:


 in intended to solve a specific problem, or to provide a generic tools for the end user. E.g., Inventory control, electronic mail etc.

                   *System Software:


 provides a general programming environment in which programmer can create specific applications to suit their customer needs. This environment is made up of programming tools (Compiler and editors) and abstractions (Such as files and objects

                    *Operating System:-


Operating system is the part of system software that manages the use of hardware by other system software and all application software. Because of this, we say that the OS is the software that is implemented “Closest to the hardware”.Simply say, an OS is a program that controls the execution of application programs and acts as an interface between the user of a computer and the computer hardware.

                          *User and OS:-


  OS facilitates use of resources by hiding local details and presenting an interface which is convenient to use.For instance : computer games, e-mail, browsing or preparing documents are applications launched by simply clicking on cue icons. How easy it is !

                       *Computer System Components:-


1.Hardware:

            provides basic computing resources (CPU, memory, I/O devices).

2.Operating system:

                    controls and coordinates the use of the hardware among the various application programs for the various users.

3.Applications programs:

                         define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs).

4.Users (people, machines, other computers).

                *Functions of Operating System:-


1.Convenience:

              An OS makes a computer more convenient to use.

2.Efficiency:

              An OS allows the computer system resources to be used in an efficient manner.

3.Ability to Evolve:

                     An OS should be constructed in such a way as to permit the effective development, testing and introduction of new system functions without at the same time interfering with service.

                     *Operating System Services:-


1.Program development:-

                       The OS provides a variety of facilities and services, such as editors and debuggers, to assist the programmer in creating programs.

2.Program execution:-

                     Instructions and data must be loaded into main memory, I/O devices and files must be initialized, and other resources must be prepared. The OS handles these scheduling duties for the user.

3.Access to I/O devices:-

                         The OS provides a uniform interface that hides these details so that programmers can access such devices using simple reads and writes.

4.Controlled access to files:-

                              For file access, the OS must reflect a detailed understanding of not only the nature of the I/O device but also the structure of the data contained in the files on the storage medium. In the case of a system with multiple users, the OS may provide protection mechanisms to control access to the files.


5.System access:-

                 The access function must provide protection of resources and data from unauthorized users and must resolve conflicts for resource contention.

6.Error detection and response:-

                                A variety of errors can occur while a computer system is running. These include internal and external hardware errors, such as a memory error, or a device failure or malfunction; and various software errors, such as division by zero, attempt to access forbidden memory location, and inability of the OS to grant the request of an application. In each case, the OS must provide a response that clears the error condition with the least impact on running applications.


7.Accounting:-

                A good OS will collect usage statistics for various resources and monitor performance parameters such as response time. On any system, this information is useful in anticipating the need for future enhancements and in tuning the system to improve performance.


                     *Operating System Definitions:-


1.Resource allocator:–

                      manages and allocates resources.


2.Control program :–

                    controls the execution of user programs and operations of I/O devices .

3.Kernel:–

             the one program running at all times (all else being application programs).

                *User and System View of OS:-


1.User perspective:-

                     ease of usage is the main consideration.

 2.System perspective:-

                       efficiency in usage of resources is the main consideration.

As a provider of resources - OS must have a policy and a control program to regulate the allocation of resources.

         

               *Evolution of Operating Systems:-


1.Serial Processing:-

                     with the earliest computers, from the late 1940s to the mid-1950s, the programmer interacted directly with the computer hardware; there was no OS. These computers were run from a console consisting of display lights, toggle switches, some form of input device, and a printer. Programs in machine code were loaded via the input device (e.g., a card reader). If an error halted the program, the error condition was indicated by the lights. If the program proceeded to a normal completion, the output appeared on the printer.


2.Simple Batch Systems:-

                          To improve utilization, t0he concept of a batch operating system was developed. It appears that the first batch operating system was developed in the mid-1950s by General Motors for use on an IBM 701. The concept was subsequently refined and implemented on the IBM 704 by a number of IBM customers. By the early 1960s, a number of vendors had developed batch operating systems for their computer systems.

3.The central idea behind the simple batch-processing scheme is the use of a piece of software known as the monitor. With this type of OS, the user no longer has direct access to the processor. Instead, the user submits the job on cards or tape to a computer operator, who batches the jobs together sequentially and places the entire batch on an input device, for use by the monitor. Each program is constructed to branch back to the monitor when it completes processing, at which point the monitor automatically begins loading the next program.

4.Multi programmed Batch Systems:-

                                  Even with the automatic job sequencing provided by a simple batch operating system, the processor is often idle. The problem is that I/O devices are slow compared to the processor. The calculation concerns a program that processes a file of records and performs, on average, 100 machine instructions per record. The computer spends over 96% of its time waiting for I/O devices to finish transferring data to and from the file.

In this approach when one job needs to wait for I/O, the processor can switch to the other job, which is likely not waiting for I/O. Furthermore, we might expand memory to hold three, four, or more programs and switch among all of them. The approach is known as multiprogramming, or multitasking. It is the central theme of modern operating systems.


4.Time-Sharing Systems:-

                         Just as multiprogramming allows the processor to handle multiple batch jobs at a time, multiprogramming can also be used to handle multiple interactive jobs. In this case, the technique is referred to as time sharing, because processor time is shared among multiple users. In a time-sharing system, multiple users simultaneously access the system through terminals, with the OS interleaving the execution of each user program in a short burst or quantum of computation. Thus, if there are n users actively requesting service at one time, each user will only see on the average 1/n of the effective computer capacity, not counting OS overhead.

5.Embedded systems:-

                     were originally used to control “autonomous systems” such as hydroelectric dams, satellite system and robots. In these kinds of applications, the OS is usually required to guarantee response times for a particular computing tasks. If the system can’t  provide the desired service prior of deadline, the application deemed to be failed.


 6.Small, communicating computers:-

                                   are representative of new class of machines. These machines are built as a small, portable, communicating computer, yet they should support many of the same kind of applications as desktop/notebook computers. This has simulated development of a new class of operating system with new resource management policies, power management strategies, limited device storage and so on.


7.Network Technology:-

                      has evolved rapidly since 1980. Modern computer configurations use high speed networks to interconnect groups of personal computers, workstations, batch systems timesharing system, real time systems, and small computers. This has an influence on OS strategy because of the need for strategies to handle resources and information sharing across the machines interconnected with a network.


                          *Computing Environments:-


1.Traditional computing

2.Web-Based Computing

3.Embedded Computing


                      *So what does an OS do?


1.Power On Self Test (POST).

2.Resource management.

3.Support for multi-user.

4.Error Handling.

5.Communication support over Network.

6.Deadline support so that safety critical application run and fail gracefully.

                *Operating System Facilities:-


1.User access to the system.

2.Storage and management of information.

3.Protection of information against accidental and intentional misuse.

4.Support for data processing activities.

5.Communication with I/O devices.

6.Management of all activities in a transparent manner.


                     *Kernel:-


In computing, the kernel is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources. Usually, as a basic component of an operating system, a kernel can provide the lowest-level abstraction layer for the resources that application software must control to perform its function. It typically makes these facilities available to application processes through inter-process communication mechanisms and system calls. Operating system tasks are done differently by different kernels, depending on their design and implementation.

                    *Functions of Kernel:-


1.The Central Processing Unit:-

                               This is the most central part of a computer system, responsible for running or executing programs. The kernel takes responsibility for deciding at any time which of the many running programs should be allocated to the processor or processors.

2.The computer's memory:-

                         Memory is used to store both program instructions and data. Typically, both need to be present in memory in order for a program to execute. Often multiple programs will want access to memory, frequently demanding more memory than the computer has available. The kernel is responsible for deciding which memory each process can use, and determining what to do when not enough is available.

3.Any Input/Output (I/O):-

                          devices present in the computer, such as keyboard, mouse, disk drives, USB devices, printers, displays, network adapters, etc. The kernel allocates requests from applications to perform I/O to an appropriate device and provides convenient methods for using the device.

                             *Shell


An operating system shell is a software component that presents a user interface to various operating system functions and services. Thus, it is nearly synonymous with "operating system user interface". The shell is so called because it is an outer layer of interface between the user and the innards of the operating system (the kernel).

                          *Shell Functions:-


Most OS shells are not direct interfaces to the kernel, even if communicate with user via peripheral devices attached to the computer directly. Shells are actually special applications which use the kernel API in just the same way as it is used by other application programs. A shell manages the user–system interaction by prompting user(s) for input, interpreting their input, and then handling an output from the operating system. Since the OS shell is actually an application, it may easily be replaced with other similar program.


                       *Types of Shell:-


1.Remote shell:-

                There are different approaches to remote access to an operation system, which sometimes also referred to as remote administration. The classical approach of multi-user mainframes is to provide text-based UI for each active user simultaneously by means of a text terminal connected to the mainframe via serial line or modem. This approach is now associated with Unix-like systems.

2.Command-line OS shells:

                          Command-line OS interfaces were dominant when resources, such as primary memory and CPU performance, were scarce. In such systems as Unix and DOS command shells were centered on file system operations, although the classical Unix shell had also considerable process management capabilities. Many OS command-line shells actually became command language interpreters.


3.Graphical (GUI) shells:-

                            A graphical user interface is possible as an extension of an operating system which traditionally uses CLI. In this case the GUI is referred to as a graphical interface or "desktop environment". But certain OS’s use a GUI shell as a primary user interface.


































Tuesday, 9 June 2015

*history of microprocessor

                           

                             *history of microprocessor
         

     
  Introduction

1.4-Bit Microprocessors

2.8-Bit Microprocessors

3.16-Bit Microprocessors

4.32-Bit Microprocessors

5.64-Bit Microprocessors
                           

                                             * introduction


  Fairchild Semiconductors (founded in 1957) invented the first IC in 1959.In 1968, Robert Noyce, Gordan Moore, Andrew Grove resigned from FairchildSemiconductors.They founded their own company Intel (Integrated Electronics).Intel grown from 3 man start-up in 1968 to industrial giant by 1981.It had 20,000 employees and $188 million revenue.


                                                1. 4 bit microprocessor


                                                               *Intel 4004:-


Introduced in 1971.It was the first microprocessor by Intel.It was a 4-bit µP.Its clock speed was 740KHz.It had 2,300 transistors.It could execute around                     60,000 instructions per second.

                                           * intel4040:-


Introduced in 1974.It was also 4-bit µP.


                                                   2. 8 bit microprocessor


                                                      *Intel 8008:-


Introduced in 1972.It was first 8-bit µP.Its clock speed was 500 KHz.Could execute 50,000 instructions per second.

                                                                *Intel 8080:-


Introduced in 1974.It was also 8-bit µP.Its clock speed was 2 MHz.It had 6,000 transistors.it Was 10 times faster than 8008.Could execute 5,00,000                  instructions per second.

                                                            *Intel 8085:


Introduced in 1976.It was also 8-bit µP.Its clock speed was 3 MHz.Its data bus is 8-bit and address bus is 16-bit.It had 6,500 transistors.Could execute             7,69,230 instructions per second.It could access 64 KB of memory.It had 246 instructions.Over 100 million copies were sold.

               

                                             3.16-bit Microprocessors


                                                                   *Intel 8086:-


Introduced in 1978.It was first 16-bit µP.Its clock speed is 4.77 MHz, 8 MHz and 10 MHz, depending on the version.Its data bus is 16-bit and address bus               is 20-bit.It had 29,000 transistors.Could execute 2.5 million instructions per second.It could access 1 MB of memoryIt had 22,000 instructions.It had               Multiply and Divide instructions.

                                                                       *Intel 8088:-


Introduced in 1979.It was also 16-bit µP.It was created as a cheaper version of Intel’s 8086.It was a 16-bit processor with an 8-bit external bus.Could               execute 2.5 million instructions per second.This chip became the most popular in the computer industry when IBM used it for its first PC.

                                                             *Intel 80186 & 80188:-


Introduced in 1982.They were 16-bit µPs.Clock speed was 6 MHz.80188 was a cheaper version of 80186 with an 8-bit external data bus.They had                        additional components like:Interrupt ControllerClock GeneratorLocal Bus ControllerCounters.

                                                      *Intel 80286:-


Introduced in 1982.It was 16-bit µP.Its clock speed was 8 MHz Its data bus is 16-bit and address bus is 24-bit.It could address 16 MB of memory.It had                1,34,000 transistors.It could execute 4 million instructions per second.

                           

                                          4.32-bit Microprocessors


                                                  *Intel 80386:-


Introduced in 1986.It was first 32-bit µP.Its data bus is 32-bit and address bus is 32-bit.It could address 4 GB of memory.It had 2,75,000              transistors.Its clock speed varied from 16 MHz to 33 MHz depending upon the various versions.Different versions:80386 DX80386 SXSLIntel 80386 became the                 best selling microprocessor in history.



                                                         *Intel 80486:-


Introduced in 1989. It was also 32-bit µP. It had 1.2 million transistors. Its clock speed varied from 16 MHz to 100 MHz depending upon the various version.  It had five different versions:
                1.80486 DX
                2.80486 SX
                3.80486 DX2
                4.80486
                5.80486 DX4
                8 KB of cache memory was introduced.


                                                                           *Intel Pentium:-


itIntroduced in 1993.It was also 32-bit µP.It was originally named 80586.Its clock speed was 66 MHz.Its data bus is 32-bit and address bus is 32-bit.It                 could address 4 GB of memory.Could execute 110 million instructions per second.Cache memory:8 KB for instructions.8 KB for data.

                                                                     *Intel Pentium Pro:-


Introduced in 1995.It was also 32-bit µP.It had L2 cache of 256 KB.It had 21 million transistors.It was primarily used in server systems.Cache                     memory8 KB for instructions.8 KB for data.It had L2 cache of 256 KB.

                                                           *Intel Pentium II


Introduced in 1997.It was also 32-bit µP.Its clock speed was 233 MHz to 500 MHz.Could execute 333 million instructions per second.MMX technology was supported.L2 cache & processor were on one circuit.

                                                            *Intel Pentium II Xeon


Introduced in 1998.It was also 32-bit µP.It was designed for servers.Its clock speed was 400 MHz to 450 MHz.L1 cache of 32 KB &  L2 cache of 512 KB, 1MB or 2 MB.It could work with 4 Xeons in same system.


                                              *Intel Pentium III


Introduced in 1999.It was also 32-bit µP.Its clock speed varied from 500 MHz to 1.4 GHz.It had 9.5 million transistors.

                                                 *Intel Pentium IV


Introduced in 2000.It was also 32-bit µP.Its clock speed was from 1.3 GHz to 3.8 GHz.L1 cache was of 32 KB & L2 cache of 256 KB.It had 42 million transistors.All internal connections were made from aluminium to copper.

                                                       *Intel Dual Core


Introduced in 2006.It is 32-bit or 64-bit µP.It has two cores.Both the cores have there own internal bus and L1 cache, but share the external bus and L2 cache (Next Slide).It supported SMT technology.SMT: Simultaneously Multi-Threading.

E.g.: Adobe Photoshop supported SMT.

                                                        *64-bit Microprocessors


                                         *Intel Core 2:-


Introduced in 2006.It is a 64-bit µP.Its clock speed is from 1.2 GHz to 3 GHz.It has 291 million transistors.It has 64 KB of L1 cache per core and 4 MB of L2 cache.It is launched in three different versions:Intel Core 2 DuoIntel Core 2 QuadIntel Core 2 Extreme

                                         *Intel Core i7


Introduced in 2008.It is a 64-bit µP.It has 4 physical cores.Its clock speed is from 2.66 GHz to 3.33 GHz.It has 781 million transistors. it has 64 KB of L1 cache per core, 256 KB of L2 cache and 8 MB of L3 cache.

                                   *Intel Core i5:-


Introduced in 2009.It is a 64-bit µP.It has 4 physical cores.Its clock speed is from 2.40 GHz to 3.60 GHz.It has 781 million transistors.It has 64 KB of L1 cache per core, 256 KB of L2 cache and 8 MB of L3 cache.

                                         *Intel Core i3:-


Introduced in 2010.It is a 64-bit µP.It has 2 physical cores.Its clock speed is from 2.93 GHz to 3.33 GHz.It has 781 million transistors.It has 64 KB of L1 cache per core, 512 KB of L2 cache and 4 MB of L3 cache.