What are Software, Operating Systems, and Applications?

What are Software, Operating Systems, and Applications?

What are Software, Operating Systems, and Applications?

Software Basics

Software is like a recipe for cooking. The recipe is a set of instructions for the cook, and includes steps for the cook to follow. Software is the recipe (or recipes) that computers need to work. Without software, computers aren’t really very smart.

Software is written in alphanumeric characters with a format that uses specific characters to create instructions for the computer. When these instructions are complete enough for the computer to do something, the software becomes a program. Software Programs do work and perform calculations. Often software is also called “code” because the way the characters are used doesn’t result in something that is written in English or any other common written or spoken language. Code is the language of computers. Programmers are people who know how to read and write software programs written in computer languages. The English language is a code. If you put noun in front a verb, you can communicate a thought or idea to someone else who understands English. Combine letters in the right pattern and you create words, and words can describe things and actions.

Say “I ran” to another person who understands you, and they have an idea of what these characters mean. But say “X lggg” and you might not be able to communicate a thought or idea, unless someone knew your “code” and how you used the characters. Software, like spoken and written language, can be used to communicate. When software includes instructions that perform a task, the software becomes a program.

Applications

An application is a software program that includes instructions for doing tasks that a person might find useful. For example, a word processor application is a program. It includes many tasks and functions that cause the computer to respond when we use the program. People who understand how to write instructions using software are called programmers. We depend on them for a lot of applications.

While many applications are complex, applications can also be simple. For example, a calculator is a common application on computers and devices, and it does some mathematical functions. Applications are the software programs that make computers so useful to use. The software program is written in code, but as users of the application we don’t need to see the code because the software gives us menus, icons, and other ways to use the software to perform our work. Part of using software is the ability to translate, or interpret, instructions.

For a computer to use a software program, it has to be able to find and follow the instructions. This is what memory is used for on computers. The memory holds the instructions for the CPU to use. As the CPU follow the instructions of the software, it is moving information in and out of memory to perform the calculations.

Mobile devices like smartphones and tablets use software programs that are usually called “apps.” An app is still an application, but since the devices started out smaller than computers, the term app was used and it seems to have stuck.

Operating Systems

While some software programs are applications, others types of software programs are called operating systems. An operating system is a software program that manages other software programs when they want to use the hardware. It’s like a traffic cop at a busy intersection with a broken signal.

As cars approach the intersection, they are traveling a certain speed. Without a traffic cop, every car would drive into the intersection at the same speed it was approaching, and there would be collisions. The traffic cop manages how the cars can enter and use the intersection and sets up rules the cars have to follow in order to proceed through the intersection on their journey. How long one line of cars waits to use the intersection, who gets to make a left or right turn. And how fast they travel is all managed by the traffic cop.

An operating system, at it’s most basic level, does the task of managing how other software programs use the hardware. An example is printing a document. When you want to print a document, the operating system manages when the processor can take care of printing. The operating system has to see what else is happening in the computer, stop any software program  that needs to stop in order to print, then give the print job the resources to print.

The most common operating systems that you probably are familiar with are Microsoft Windows and Apple Mac OS. Mobile devices use operating systems also, and the two most popular mobile operating systems are Google’s Android and Apple’s iOS. Operating systems make it easier for programmers to write software since they can write the software and not worry about the hardware. So as a result, software programs are said to be written for a specific operating system. The hardware, software programs (applications), and operating systems all work together.

It’s common for computer companies to build everyday applications, like a web browser, into an operating system. As a result, you might not be aware of when you’re using the operating system and when you’re using an application. Many operating systems include applications, so the computer user is more likely to use the application already installed and included with the operating system, rather than adding and installing an independent programmer’s version. As a result, many computer users assume that applications for common functions like email, photos, and web browsing are part of the operating system. But there’s a balance that an operating system maker has to manage.

The line between an operating system and applications is sometimes blurry. Companies and organizations that make operating systems usually try to keep a balance between supplying applications for the convenience of their customers, but making it easy for application programmers to create and sell additional applications built to work with their operating system. This is important since people want to do things with their computers, and it’s applications that make computers useful.

Software Programs and Operating Systems

One of the purposes of an operating system is to communicate and manage the hardware. A programmer’s job is made easier by the operating system. Operating system  software usually does common tasks, like printing a document or displaying graphics on a monitor.  The operating system has programs that can talk to things like keyboards, printers, cameras, networks, and displays, so the programmer doesn’t have to worry about writing “code” for their program to communicate with the hardware and do common tasks. And as hardware might be from different manufacturers or different models, having the operating system take care of the hardware offers more devices that can use the application.

An Apple iPhone, for example, uses Apple’s iOS operating system. For any software program to work on an iPhone, it has to work with iOS since that’s the only operating system on an iPhone.  Apple uses the same operating system on all of it’s iPhone models so a programmer can write an application that will work on different models of iPhones with one version of the software. The application is written to work with the operating system, and the operating system takes care of the differences in hardware.

Since software applications work with operating systems, it’s important to know what operating systems a specific application with work with. A software program for Windows doesn’t mean it will work on all versions of the Windows operating system. The software program is written to work with Windows 8, or 7, or Vista, or XP. Each one is a different operating system and a software program written for Windows 8 might not work on Windows Vista or XP.

Companies like Apple, Microsoft, and Google (who makes Android) know that while hardware is important, it’s the applications that are the reason people buy a particular computer. As a result, good operating systems are important to attract more programmers to write applications.