Information Technology Reference
In-Depth Information
2. Read
1. Get x.html
Server
x.html
Client
4. Data
3. Data
Figure1.1: The operation of a web server.
operating system, so understanding the function of an operating system is useful
to most computer scientists. Our goal in this topic is to go much deeper than
that, to explain the technologies used inside operating systems, technologies
many of us rely on every day without realizing it.
Software engineers often encounter challenges similar to those faced by op-
erating systems when building other complex systems, and they use many of
the same technologies and design patterns. Whether your goal is to work on
the internals of an operating system kernel, or to build the next generation of
software for cloud computing, secure web browsers, game consoles, graphical
user interfaces, media players, databases, or multicore software, the concepts
and abstractions needed for reliable, portable, ecient and secure software are
much the same. In our experience, the best way to learn these concepts is to
study how they are used in operating systems, but we hope you will apply these
concepts to a much broader range of computer systems.
To get started, consider the web server in Figure 1.1. Its behavior is amaz-
ingly simple: it receives a packet containing the name of the web page from
the network. The web server decodes the packet, fetches the file from disk, and
sends the contents back over the network to the user.
Part of an operating system's job is to make it easy to write applications
like web servers. But if we dig a bit deeper, this simple story quickly raises as
many questions as it answers:
Many web requests involve both data and computation. For example,
the Google home page presents a simple text box, but each search query
entered in that box consults databases spread over literally thousands of
machines. To keep their software manageable, web servers often invoke
helper applications, e.g., to manage the actual search function. These
helper applications need to communicate with the main web server for
Search WWH ::




Custom Search