Section 5: Computer Software

Ace your homework & exams now with Quizwiz!

5.4 (Programming and Scripting: Compilers)

A compiler translates source code into machine language. A compiler checks source code for errors before translating it into object code. If the source code is found to have errors, the compiler specifies the errors. Errors must be resolved (also known as debugged) before the compiler can successfully recompile the source code. C, C++, C#, and Java programs need compilers to execute.

5.2 (Operating Systems: Utility Software)

Utility software extends the capabilities of an operating system. Utility software helps customize the operating system's function. For example, installation utility software consists of programs for performing activities that are fundamental to computer installation but not included in the operating system. Some examples of utility software include software to compress or decompress data, play multimedia presentations, and handle network communications.

5.2 (Operating Systems: Mac)

Mac. Mac is developed by Apple. Previous versions of Mac operating systems include Snow Leopard, Lion, and Mountain Lion. Like Microsoft, Apple's operating systems are closed-source. Mac operating systems are known for their media editing and graphic rendering capabilities.

5.1 (Computer Software: System Software)

System software performs tasks that are common to computer systems in general. The system software provides the infrastructure needed to run application software, allowing it to interface with the hardware of the computer system. System software can be divided into utility software and operating systems. Operating systems contain the user interface and the kernel of the operating system.

5..3 (Other Software Classification and Groups: Productivity Software)

Software that people use to complete daily tasks is called productivity software. Productivity software is used to complete tasks such as writing documents, managing personal information, giving presentations, storing data, and sending email.

5.4 (Algorithms: What is it?)

An algorithm is a mathematical method of solving problems both big and small. Though computers run algorithms constantly, humans can also solve problems with algorithms. Watch the following video to learn how algorithms can be used in seemingly simple situations and also complex ones.

5..3 (Other Software Classification and Groups: Collabaration Software

Collaboration software helps people communicate and work with one another, and helps computers share information.

5..3 (Other Software Classification and Groups)

Collaboration, productivity, and specialized software improve how companies communicate, organize information and projects, and develop and execute ideas. These tools provide structure to tasks and improve employee efficiency. As organizations have many needs, there are many solutions housed within these categories of software.

5.2 (Operating Systems: Linux)

Linux. Linux is open-source operating system software. There are many different versions of Linux, referred to as flavors, including Linux Mint, Mandrake, Fedora, Ubuntu, Debian, and CentOS. These operating systems are free for anyone to use. However, there are vendors (e.g., Red Hat, Cisco) that offer Linux-based operating systems, adding cost for support and/or hardware.

5.3 (Software Architecture Classification: Software Licensing)

Microsoft and Apple require you to purchase a license to install their operating systems, whether it is for personal or business use. Further, it is closed-source, meaning they do not permit anyone to modify their operating system code. The operating system is developed by Microsoft and Apple. Linux, on the other hand, is open-source and collaborators work together from around the world. Open-source systems allow individuals and organizations to open and modify the operating system's kernel, the heart of the operating system.

5.1 (Computer Software: Application and System Software)

Software can be divided into application and system software. System software is general-purpose software that is used to operate computer hardware. It provides a platform to run application software. Application software is specific-purpose software used to perform a specific task.

5.3 (Software Architecture Classification)

Target users of application software fall into one of the following three categories: bespoke, off-the-shelf, and hybrid. Bespoke software is custom made, specifically designed and developed for an organization. Off-the-shelf software provides a general set of features that are useful to a broad range of users. Hybrid software is off-the-shelf software, customized to an organization's needs.

5.2 (Users and Interface: User Interface)

The user interface allows end users to communicate with the operating system. Command-line interfaces (CLIs) are a type of user interface that communicate with end users through textual messages using a keyboard and monitor. Contemporary operating systems have graphical user interfaces (GUIs). GUIs allow end users to issue commands through input devices such as mouses, keyboards, or touch screens. On a touch screen, a user can directly manipulate icons with their finger or a stylus. While the user interface is an important part of a machine's functionality, it is only the intermediary between the end user and the operating system. The distinction between the user interface and the internal parts of the operating system is emphasized by the fact that some operating systems require the user to select an available interface according to their preferences.

5.2 (Operating Systems)

An operating system (OS) controls the overall operation of a computer. It provides the ability for a user to store and retrieve files, facilitates a user interface to request the execution of programs, and maintains the environment necessary to execute programs. Operating systems typically fall into one of two categories: network operating system or desktop operating system. Many types of operating systems are available, each with different file structures and features. Three of the most common operating systems are Windows, Mac, and Linux.

5.2 (Users and Interface: Operating Systems Users)

An operating system is also tasked with protecting the computer's resources from unauthorized users. When a computer is used by multiple people, each user is assigned their own account on the computer. A user account is a record within the operating system with information such as a name, password, and user privileges (e.g., administrator vs. standard user). The operating system uses this information during each log-in to control access to the system and resources. Accounts are established by the administrator, whose account is often called a superuser or root account. When the end user supplies the proper credentials during the log-in procedure, the user is given access to the operating system. Administrators can alter settings, modify critical software packages, and perform other maintenance activities denied to other users.

5.1 (Computer Software: Application Software)

Application software consists of the programs that perform tasks specific to the machine's general purpose. A computer used to maintain a store's inventory needs different software than a machine used by a mechanical engineer. Spreadsheet, database, desktop publishing, accounting, and program development software are all examples of application software. Those who are not in the IT field might refer to application software as productivity or collaboration software or tools.

5.3 (File Management: Linux)

File managers are able to bundle files into directories or folders. Directories can be placed within other directories, resulting in a hierarchical file structure. The directory path tells a user where the file is located within the file system. Directory paths are often written as the folder names separated by slashes. In a Linux shell a forward slash (/) is used to express directory paths; Linux is case-sensitive; the root directory in Linux is expressed as a single forward slash; and most flavors of Linux place the home directory within the /home/.

5.4 (Programming and Scripting: Interpreters)

Interpreters translate and execute source code into machine language one line at a time. If the interpreter finds an error, the process is terminated at the statement containing the error and displays an error message. The error must be resolved before the interpreter will continue to the next line. Interpreters convert instructions one statement at a time when the program is run. Perl and Python execute using interpreters.

5.3 (Software Architecture Classification: Local and Cloud Applications)

Local applications are application software stored on individual computers. Local applications are mostly found on personal machines, as they are often impractical for large organizations. Cloud computing delivers services, including computing, storage, databases, networks, software, analytics, and intelligence, thus offloading infrastructure resource requirements to the cloud service provider. Cloud applications, or cloud apps, are software units where cloud-based and local components work together to perform tasks.

5.3 (Software Architecture Classification: Software Packing)

Software can be packaged in various ways, including shareware, freeware, and public domain. Shareware is an application that can be installed as a trial limited by time and/or functionality. If the user decides to purchase the application or subscription, they then get the full functionality. Freeware is, as the term suggests, free. However, freeware and shareware are both protected by end-user license agreements (EULA) and copyright laws (where applicable). This is where freeware and shareware are differentiated from software in the public domain. Public domain software has no EULA and no intellectual property protections and is available for anyone to download and use at their own discretion. However, in the United States, a copyright gives an author of a software package the ability to prevent unauthorized duplication for at least 35 years. Other countries may have similar copyright laws. Take a moment now to research what those laws might be for your country.

5.4 (Programming and Scripting: Common High Level Programming Languages)

Some common high-level programming languages are outlined below, with characteristics that make them unique or suitable for particular tasks. LanguageCharacteristicsC++Uses a vocabulary and a set of rules for instructing a computer to perform certain tasks.PythonAn easy-to-use programming language that does not require a compiler for debugging.JavaScriptA programming language designed to enable user engagement with dynamic elements on web pages.TclOften used in rapid prototyping and the creation of GUIs, TCL is a simple and compact language but is also very powerful.PHPAn all-purpose language that is especially suitable for web development.

5.4 (Programming and Scripting: Language Processors & Programming Languages)

Some software classification schemes include language processors as a type of system software. Languages developed throughout the generations, from the earliest machine languages to high-level programming languages, are still widely used. Assembly language is machine-dependent, yet mainly consists of mnemonic processor instructions, data, and other statements or instructions that are not directly understandable by machine and high-level language as machine-independent. A computer understands instructions in machine code (i.e., in the form of 0s and 1s). Computer software is written mostly in high-level languages like Java, C++, and Python. The collection of instructions written in a programming language is called source code. Source code cannot be directly executed by the computer. Rather, source code requires a language processor, which is a special-purpose system software used to translate the source code into machine code.

5..3 (Other Software Classification and Groups: Specialized Software)

Specialized software performs tasks for specific purposes. Professions such as computer-aided design, medicine, science, finance, games, and entertaining use specialized software.

5.2 (Operating Systems: Kernel)

The kernel is the internal part of an operating system. The kernel contains the operating system components that perform the basic functions required by the computer installation. One such unit is the file manager whose function is to coordinate the machine's storage. The file manager maintains records of all the files stored in secondary storage, including where each file is stored, which users have access, and which portions of the storage are available for new files.

5.3 (File Management: Device Drivers)

The kernel of an operating system stores a collection of device drivers, software that communicates with controllers or other peripheral devices. Device drivers translate generic requests into the technical steps required to complete the task. Device drivers, sometimes referred to as middleware, facilitate the communication of hardware and software. A print driver needs to be installed if a user wants to send a document to the printer. A Bluetooth headphone driver is necessary if a user wants to listen to music on Bluetooth headphones. Some device drivers are installed automatically, while others would need to be downloaded and installed from the manufacturers' sites.

5.3 (File Management: Memory Management)

The memory manager is another component of an operating system's kernel. The memory manager manages the system's primary main memory. When a computer is performing a single task, managing the memory is minimal. When a computer is performing many tasks simultaneously, the duties of the memory manager are extensive. The memory manager needs to find and assign the main memory space for each of the processes and restrict the actions of each process to the memory space allocated to that program. When more main memory space is needed, the memory manager can create an illusion of additional space by rotating programs and data between the primary and secondary memory, a technique called paging. The additional memory space created in secondary memory by paging is referred to as virtual memory.

5.4 (Algorithms)

The mere term algorithm sounds complicated and somewhat intimidating, but an algorithm is simply a step-by-step formula outlining how to execute a task. If you have ever baked a cake, pie, or cookies, or followed a recipe to make a special entrée for family or friends, you have experienced a real-world example of an algorithm. An algorithm provides a specifically structured set of inputs (i.e., the steps of a recipe) required to produce a specific output (i.e., your cake, pie, cookies, or special entrée). In the IT world, an algorithm is a set of well-organized, computer-implemented instructions that often result in a computation or the solution to a problem. These computations can be simple or quite complex, depending on what the need is. Algorithms are even at the very heart of machine learning, and you will learn more about algorithms in the Scripting and Programming Foundations course later in this program.

5.3 (File Management: Windows)

Windows Hierarchy In a Windows shell a backward slash (\) is used to express directory paths; Windows is not case sensitive when searching for files, which means capitalization is irrelevant; Windows root directory is referred to by letter, commonly C drive; and the user's home directory is found within C:\Users.

5.2 (Operating Systems: Windows)

Windows. Windows is developed by Microsoft. Previous versions of Windows desktop operating systems include Windows XP, Windows 95, Windows 98, Windows Vista, and currently Windows 10. At the time of this writing, Windows is closed-source with a subscription model. Windows intends to keep the operating system name as Windows 10, but continue adding versions to each update. Windows desktop operating systems are common for personal computers (PCs). Typically, Microsoft products are known for their easy-to-use design.


Related study sets

Brunner and Suddarth Chapter 45 Study Guide Questions Part 2

View Set

Nursing Informatics and Quality Improvement - Quiz 2

View Set

Organizational Behavior Midterm Exam: Chapter 2

View Set