Wednesday, 24 August 2016

Systems Communicate with Other Systems Using Networks

computer courses in Rawalpindi.

Up to this point In our tour of systems, we have treated a system as an isolated collection of hardware  and software. In practice, modern systems are often linked to other systems by networks. From the point of view of an individual system, the network can be viewed as just another I/O device. Technical Data used in the field explained in computer courses in Rawalpindi.

When the system copies a sequence of bytes from main memory to the network adapter, the data flows across the network to another machine, instead of, say, to a local disk drive. Similarly, the system can read data sent from other machines and copy this data to its main memory.

With the advent of global networks such as the Internet, copying information from one machine to another has become one of the most important uses of computer systems. For example, applications such as email, instant messaging, the World Wide Web, FTP, and telnet are all based on the ability to copy information over a network. Some more details of computer courses in Rawalpindi are as under.

Returning to our hello example, we could use the familiar telnet application to run hello on a remote machine. Suppose we use a telnet client running on our local machine to connect to a telnet server on a remote machine. After we log in to the remote machine and run a shell, the remote shell is waiting to receive an input command. From this point, running the hello program remotely involves the five basic.

After we type the “hello” string to the telnet client and hit the enter key, the client sends the string to the telnet server. After the telnet server receives the string from the network, it passes it along to the remote shell program. Next, the remote shell runs the hello program, and passes the output line back to the telnet server. Finally, the telnet server forwards the output string across the network to the telnet client, which prints the output string on our local terminal.

This concludes our initial whirlwind tour of systems. An important idea to take away from this discussion is that a system is more than just hardware. It is a collection of intertwined hardware and systems software that must cooperate in order to achieve the ultimate goal of running application programs. The rest of this book will fill in some details about the hardware and the software, and it will show how, by knowing these
details, you can write programs that are faster more reliable, and more secure.
To close out this chapter, we highlight several important concepts that cut across all aspects of computer systems. We will discuss the importance of these concepts at multiple places within the book. TSK Training for Skills and Knowledge is the best institute in Rawalpindi Islamabad for Pakistani Students who wants to join computer courses in Rawalpindi.

Tuesday, 23 August 2016

THE OPERATING SYSTEM MANAGES THE HARDWARE Part (B)- Processes



 computer courses in Rawalpindi.

When a program such as hello runs on a modern system, the operating system provides the illusion that the program is the only one running on the system. The program appears to have exclusive use of both the processor, main memory, and I/O devices. The processor appears to execute the instructions in the program, one after the other, without interruption. And the code and data of the program appear to be the only objects in the system’s memory. These illusions are provided by the notion of a process, one of the most important and successful ideas in computer science. Technical Data about this field explained in computer courses in Rawalpindi.
A process is the operating system’s abstraction for a running program. Multiple processes can run concurrently on the same system, and each process appears to have exclusive use of the hardware. By concurrently, we mean that the instructions of one process are interleaved with the instructions of another process. In most systems, there are more processes to run than there are CPUs to run them. Traditional systems could only execute one program at a time, while newer multi-core processors can execute several programs simultaneously. Some more details of computer courses in rawalpindi are as under.
In either case, a single CPU can appear to execute multiple processes concurrently by having the processor switch among them. The operating system performs this interleaving with a mechanism known as context switching. To simplify the rest of this discussion, we consider only a uniprocessor system containing a single CPU. We will return to the discussion of multiprocessor systems in Section 1.
The operating system keeps track of all the state information that the process needs in order to run. This state, which is known as the context, includes information such as the current values of the PC, the register file, and the contents of main memory. At any point in time, a uniprocessor system can only execute the code for a single process. When the operating system decides to transfer control from the current process to some new process, it performs a context switch by saving the context of the current process, restoring the context of the new process, and then passing control to the new process. The new process picks up exactly where it left off. the basic idea for our example hello scenario.
There are two concurrent processes in our example scenario: the shell process and the hello process. Initially, the shell process is running alone, waiting for input on the command line. When we ask it to run the hello program, the shell carries out our request by invoking a special function known as a system call that passes control to the operating system. The operating system saves the shell’s context, creates a new hello process and its context, and then passes control to the new hello process. After hello terminates, the operating system restores the context of the shell process and passes control back to it, where it waits for the next command line input. TSK is the best institute in Rawalpindi Islamabad for  Pakistani Students who wants to join computer courses in Rawalpindi.

Monday, 22 August 2016

The Operating System Manages the Hardware



computer courses in Rawalpindi.

Back to our example, hello. When the tray is loaded and ran the hello program, and if the hello program printed his message, accessed either program the keyboard, display, hard drive or memory directly. Rather, they relied on the provided services by the operating system. We have the software layer between the application program insert the operating system and the hardware think that through all the tests, must go through an application program to manipulate the hardware, the operating system. Technical  Training about the computer system explained in computer courses in Rawalpindi.
The operating system has two main objectives: to protect the hardware from being misused by outliers applications, and to provide applications with simple and uniform mechanisms for manipulating complicatedand often completely different low-level hardware devices. The operating system achieves both goals of the basic abstractions processes, virtual memory, and files. As this figure suggests, files are abstractions for I / O devices, the virtual memory is an abstraction for both the main memory and disk I / O devices and processes are abstractions for the processor, memory, and I / O devices , We are each in turn discuss. Some more information about this field in computer courses in Rawalpindi are as under.
Aside: Unix and Posix:
The 1960s was an era of large, complex operating systems such as IBM's OS / 360 and oneywell'sMultics systems. While OS / 360 is one of the most successful software projects in history was Multics dragged for years and never reaches broad application. Bell Laboratories was an original partner in the Multics project, but dropped in 1969 because of concern about the complexity of the project and the lack of progress. In response to their unpleasant Multics experience, a group of Bell Labs researchers - Ken Thompson, Dennis Ritchie, Doug McIlroy and Joe Ossanna - began work in 1969 on a simple operating system for a December PDP-7 computer, written entirely inmachine language , Many of the ideas in the new system, such as the hierarchical file system and the concept of a shell as a user-level process were of Multics borrowed but implemented in a smaller, simpler package.
In 1970, Brian Kernighan was the new system "Unix" as an allusion to the complexity of "Multics." The kernel in C called rewritten in 1973, and Unix in 1974 [89] announced to the outside world. Since Bell Labs made the source code available to schools with more generous terms, Unix developed a large following in the universities. The most influential work was done at the University of California at Berkeley in the late 1970s and early 1980s, with Berkeley researchers called the addition of virtual memory and the Internet protocols in a number of publications Unix 4.xBSD (Berkeley Software Distribution) , Simultaneously, Bell Labs released their own versions, which became known as System V Unix. Versions of other vendors, such as Sun Microsystems Solaris system V versions were derived from these original BSD and System.
Trouble arose in the mid-1980s tried as Unix vendors to differentiate themselves by new and often incompatible functions. To counter this trend, the IEEE (Institute of Electrical and Electronics Engineers) sponsored an effort to standardize Unix, later known as "Posix" by Richard Stallman. The result was a family of standards, known as the Posix standards that issues such as the C language interface for Unix system calls, shell programs and utilities that cover topics and network programming. As more systems fully comply with the standards Posix, the differences between the versions of Unix are gradually disappearing. End aside. TSK Training for Skills and Knowledge is the best institute in Rawalpindi who wants to join computer courses in Rawalpindi.

Saturday, 20 August 2016

STORAGE DEVICES FORM A HIERARCHY



computer courses in rawalpindi

In a similar manner, unlike a typical register file stores only a few hundred bytes of information to the billions Bytes in main memory. However, the processor data from the register file can be read almost 100 times quicker than from the memory. Even more troublesome, as the semiconductor technology in recent years continues, continue to increase this processor memory gap. It is easier and cheaper to processors run faster than main memory run faster to make. Technical Data used in the field explained in computer courses in rawalpindi

To the processor-memory space, system designers are smaller faster storage devices called cache memory (or simply caches) that serve as temporary staging areas for information that the processor will likely need in the near future. Figure 1.8 shows the cache memory in a typical system. An L1 cache on the processor chip holds tens of thousands of bytes, and can be accessed almost as soon as the register file. Some more details of computer courses in rawalpindi are as under.

A larger L2 cache with hundreds of thousands to millions of bytes is connected by a special bus to the processor. It could 5 times longer for the process to access the L2 cache than the L1 cache, but that is still 5 to 10 times faster access than main memory. The L1 and L2 caches are connected to a hardware technology as a static random access memory (SRAM) known implemented. Newer and more powerful systems even three levels of cache: L1, L2 and L3. The idea behind caching is that a system to obtain the effect of both a very large memory and a very fast by exploiting location to access the tendency for programs and data code in localized areas. By caches set up to hold data that is often likely to be accessed, we can perform most memory operations with the fast cache memory.

One of the most important lessons in this book is that the programmer application that are aware of the cache memory, it can be used to improve the performance of their programs by an order of magnitude. You will learn more about this important device and how to use them

Cache memory Matter:
An important lesson from this simple example is that a system much time information from one place to another spends. The machine instructions in the Hello program originally stored on the hard disk. When the program is loaded, it will be copied to the main memory. Since the processor is running the program, the instructions from the main memory are copied into the processor. Similarly, the data string "Hello, world \ n", the original, copied to the hard disk into main memory and then copied from the main memory to the display device. From the perspective of a programmer, much of this effort is copying who slowed down to the "real work" of program.Thus, an important goal for system designers for these operations is as soon as possible running copy to make. TSK Training for Skills and Knowledge is the best institute in Rawalpindi Islamabad for  Pakistani Students who wants to join computer courses in rawalpindi.

Friday, 19 August 2016

Processors Read and Interpret Instructions Stored in Memory



computer courses in Rawalpindi.

At this point of our program hello.c source it was developed by the detection system into an executable file called hello object that was stored on the hard disk translated. Technical Data used in the field explained in computer courses in Rawalpindi.
To run the executable file on a Unix system, we give its name to an application program as a shell known:
Unix> ./hello
Hello World
Unix>
The shell is a command line interpreter, which prints a symbol, awaiting a command line, and then executes the command. If the first word of the command line does not correspond to an integrated command shell, it takes charge of the shell is the name of an executable file is running and load is designed. invites So in this case, the shell program and leads hello and then wait for it to finish. The Hello program prints the message on the screen and then closed. The Shell and then prints a prompt and waits for the next command line input. Some more details of computer courses in Rawalpindi are as under.

Hardware Organization of a system:
To understand what happened hello to our program, when we met him, we have the hardware organization of a typical system to understand is shown in Figure 1.4. This particular image is the model family of Intel Pentium systems but all systems have a similar appearance. Do not worry about the complexity of this figure now. We are in the course of the book about the various details in stages.

Buses:
Runs on the entire system is a set of lead called electrical lines buses bytes of information back and forth between the components. The buses are usually fixed-size to transfer pieces of bytes designed with known words. The number of bytes in a word (the word size) is a basic system parameters, which varies between systems. Most of the machines now have an extension word of 4 bytes sizes (32 bits) or 8 bytes (64 bits). For the sake of our discussion here, we will have a word size of 4 bytes, and assume that the buses pass only one word at a time.
I / O devices S:
Input / output devices (I / O), the system connection to the outside world. In our example has four
I / O: a keyboard and mouse for user input, a screen for the user exit, and a drive (or simply disk) for long-term storage of data and programs. First, the executable program hello to the hard disk. Each device I / O either I is connected to the E / S bus. For a control or an adapter, the distinction between the two is a package in the first place. Drivers are by yourself or the system motherboard to the device chipset (often called the motherboard). An adapter is a card that is plugged into the main circuit board in a slot. Regardless of the purpose any information to be transmitted back and forth between the bus I / O device and I / O. TSK Training for Skills and Knowledge is the best institute in Rawalpindi Islamabad for  Pakistani Students who wants to join computer courses in Rawalpindi.