top of page
Writer's picturegetintocinema

Software

Computer software consists of both programs and data. Programs consist of instructions for the processor. Data can be any information that a program needs: character data, numerical data, image data, audio data, and countless other types. The distinction between programs and data is not as clear-cut as you might think, however.


Fundamental Idea: Both programs and data are saved in computer memory in the same way. The electronics of computer memory (both main memory and secondary memory) make no distinction between programs and data.


The insight that both programs and data can be saved using the same electronic methods is an important concept in computer science. Computer systems use memory for either programs or data, as needed.


Types of Programs


There are two categories of programs. Application programs (usually called just "applications") are programs that people use to get their work done. Computers exist because people want to run these programs. Systems programs keep the hardware and software running together smoothly. The difference between "application program" and "system program" is fuzzy. Often it is more a matter of marketing than of logic.


The most important systems program is the operating system. The operating system is always present when a computer is running. It coordinates the operation of the other hardware and software components of the computer system. The operating system is responsible for starting up application programs, running them, and managing the resources that they need. When an application program is running, the operating system manages the details of the hardware for it. For example, when you type characters on the keyboard, the operating system determines which application program they are intended for and does the work of getting them there.


Some embedded systems do not use an operating system, but run their programs directly on the processor.


Modern operating systems for desktop computers come with a user interface that enables users to easily interact with application programs (and with the operating system itself) by using windows, buttons, menus, icons, the mouse, and the keyboard. Examples of operating systems are Unix, Linux, Android, Mac OS, and Windows.




Operating Systems


An operating system is a complex program that keeps the hardware and software components of a computer system coordinated and functioning. It is like the owner of a small shop, who keeps everything in order by attending to customers, accepting deliveries, stocking the shelves, doing the bookkeeping, and so on. The shopkeeper must promptly attend to tasks as they arise. Without the shopkeeper the shop could not function.


Most computer systems can potentially run any of several operating systems. For example, most Pentium-based computers can run either Linux or a Windows operating systems. Usually only one operating system is installed on a computer system, although some computers have several. In any case, only one operating system at a time can be in control of the computer system. The computer user makes a choice when the computer is turned on, and that operating system remains in control until the computer is turned off.


Starting a Program


When a computer is first started, the hardware automatically loads the operating system and starts it running. This process is called booting. The reason for this odd term is that the operating system is itself involved in getting itself running—a process that is like someone "pulling themselves up by their bootstraps". Once the operating system is running, it is used to start up application programs.


Here is a (simplified) list of what happens when the user (you) starts up an application. Assume that the operating system (OS) is already running.


1. The user asks to run an application.

  • This is done by clicking on an icon, making a menu choice, or by other means.

2. The OS determines the name of the application.

3. The OS finds the files on the hard disk where the application and its data are stored.

4. The OS finds an unused section of main memory that is large enough for the application.

5. The OS makes a copy of the application and its data in that section of main memory.

  • The software on the hard disk is unchanged; main memory holds a copy of what is on disk.

6. The OS sets up resources for the application.Finally,

7. The OS starts the application running.


As the application runs, the OS is there in the background managing resources, doing input and output for the application, and keeping everything else running.



Networks


A computer network consists of two or more computers connected so that they can exchange data and programs. When a computer is a member of a network, the programs it runs and the data it uses can be on the hard disk of some other computer on the network. In business and industrial settings, most computers are on a network. The operating system that runs on a networked computer must manage its share of the network (along with managing all its other responsibilities). The operating system is able to find programs and data that are stored on other network computers, and copy them into its own main memory.

In a local-area network only a few dozen computers are connected together, usually all located within the same building. Each computer has a network address that the other computers use to access it. Usually the computers share a printer. There may be an especially powerful computer called a server whose hard disk holds application programs and data that the other computers are expected to need.


Each computer in a network has a network interface card. This is an input/output device that sends and receives data over cables. The network interface cards of computers on a network are connected together with cables.


Wide-Area Networks


Large organizations need to connect many more computers than can be handled with a local area network. A wide-area network can connect thousands of computers together over great distances. The long distance connections are made by using optical fiber, telephone lines, microwave radio, and satellite communications. Each computer in the network has a network address (as with local-area networks) to uniquely identify it.


Wide-area networks use a variety of special hardware to manage the flow of data. When two computers share data, this hardware makes it appear that the two computers are connected together directly. In reality, there may be dozens of network devices between the two computers.


All these devices use the same method for dealing with data. Without a common method of dealing with data, a large network would become a hopeless muddle. An agreement about how to represent and transmit data over a network is called a protocol. Usually large networks use a protocol called TCP/IP (for transmission control protocol / internet protocol).



Internet


The Internet consists of many networks that have been connected together to form one huge worldwide network. Even on this huge network, each computer must have a unique network address, called an IP address, much like each telephone in the world has a unique telephone number (including the country code and area code).

Here a typical IP address:

149.152.21.203

IP addresses actually are 32-bit binary numbers. Networking equipment uses these addresses to route information over the network. The above example shows the standard way of writing these bits using decimal digits.

But even when written in decimal the address is not clear to humans. One of the features of the World Wide Web is that it allows humans to use computer names rather than numbers. Here is a typical computer name:

chortle.ccsu.edu

This computer name corresponds to the above IP address. When you use it in a Web browser it is converted into the 32 binary digits of the computer's IP address.

As an experiment, enter the above IP address into the address field of your browser and hit return. Now do the same with the computer name. You will get to the same web page with each.


World Wide Web


Remember that important idea (discussed several pages back):


Fundamental Idea: Both programs and data are saved in computer memory in the same way. The electronics of computer memory (both main memory and secondary memory) make no distinction between programs and data.


Communications equipment makes no distinction between programs and data, either. It is all information as far as it is concerned, and all information is transmitted the same way. The Internet is like a worldwide package delivery service. It is concerned with moving packages from one address to another, without concern about what is in the packages.


The Internet provides the hardware and the information transmission protocols for the World-Wide Web. Data intended for the Web is transmitted over the Internet just like any data. What makes Web data special is that it is intended for Web browsers (such as the one you are probably looking at). A browser is a program that can read Web pages and display them in a nicely formatted way.


A Web page is a package of data that contains information on how it is to be displayed on a monitor. This information is given using a language called Hypertext Markup Language (HTML). If you want to see the HTML that describes this page, look at the menu at the top of your Web browser, and select Tools/Web Developer/Page Source. For older browsers, select View in the menu then left-click on Source. This will bring up a new window with the HTML of this page in it. After you are done viewing, close the window by clicking on the close button in its upper right corner (the button marked with X).


Hyperlinks


One Web page is connected to another with a hyperlink. If you have been reading these notes over the Web, you have been linking between Web pages by using hyperlinks.


A Web browser usually displays a hyperlink in a distinguishing color (usually blue). When you click on it, the browser asks the operating system to get a particular Web page from another computer connected to the Internet.

The Web page to get is specified with a uniform resource locator URL. A URL specifies the exact computer (among all the Internet computers in the world) and the exact Web page on that computer.


To see some examples of URLs, keep watching the box at the top of your browser labeled "Address".


28 views0 comments

Recent Posts

See All

Components of a Computer System

Information is funny stuff. The information for the web page you are looking at is recorded on a hard disk inside a computer located in...

Comments


bottom of page