Midterm Review Flashcards

(31 cards)

1
Q

Define Software

A

A collection of data or computer instructions that tells the computer how to work

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Code vs software

A

Software are programs used by the computer

Code is instructions written in a form that computers can execute

Machine Code, Assembly Code, Low-Level & High-Level Code

Code is not software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a killer app?

A

Any computer program or software that is so necessary or desirable that it proves the core value of some larger technology

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Examples of Killer Apps

A

It’s all about the sales:
DOS, Mac, Windows, iPhone, Android, The Internet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Describe Firmware

A

Software embedded directly in a hardware, used to make it function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Open-source vs closed source software

A

Source code is Public vs Private

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Examples of Open and Closed source Software

A

Open: Firefox, MySQL, Perl, PHP, Linux
Closed: Windows, IOS, Mac OS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Categories of Application Software

A

Information Worker
Entertainment
Educational
Enterprise
Simulation
Media Development
Product Engineering
Software Engineering

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Examples of application software used by an information worker

A

Spreadsheets, Email and blog clients

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are programming tools?

A

Applications used to create, debug, maintain, or otherwise support software development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Examples of programming tools

A

Compilers
Debuggers
Interpreters
Linkers
Editors
IDEs
Linters

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are differences between compiled, interpreted, hybrid

A

C: all at once before we load and execute the program
I: convert each line of code as you execute the program
H: Convert the source code to a pseudo-machine code. Pass to an interpreter
that converts the p-code (portable code) as it executes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe Machine Language

A

Directly executable by a CPU. Each CPU uses its own binary machine code made up of 0s and 1s.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe Assembly Language

A

Provides some human-understandable representation of 0s and 1s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe Low-Level Languages

A

Low-level language provides a minimal abstraction of the processor
Low-level code doesn’t significantly abstract the computer’s instruction set architecture but does hide the specific assembly codes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Describe High-Level Languages

A

High-level languages significantly abstract the details of the computer.

17
Q

Define an Operating System

A
  1. A system software that manages computer hardware, software resources, and provides common services for computer programs
  2. A program that implements the detailed interactions with hardware and applications
18
Q

Name tasts that need an OS

A

Input a character from the keyboard
Allocate n bytes of memory for a new data structure
Load a program into memory
Call a shared library function
Exit current program
Sleep for n seconds

19
Q

Difference between User and Kernel Modes

A

User mode provides a safe and controlled environment for applications
Kernel mode allows the OS to manage hardware and system resources directly

20
Q

What is the mode bit?

A

The mode bit prevents direct communication with the Kernel & Hardware
Separation is essential for system security and stability

21
Q

What is the mode bit set to for user mode and kernel mode?

A

User - 0
Kernel - 1

22
Q

Provide Examples of Privileged Instructions

A

I/O Operations
Memory Management
Interrupt handling
Mode Changing
System Control

23
Q

Provide Examples of Non-Privileged Instructions

A

Arithmetic Operations
Data Movement
Control Flow
Basic Memory Access
I/O Requests

24
Q

Describe Unix and what its used on

A

Written in C. Text Based. Multi-user Support
Used by AT&T and Bell

25
Describe MS DOS and what its used on
Simple and Text Based Used for Microsoft PCs
26
Describe Linux and what its used on
Based on Unix. Open Source. Started text based, has graphical interface distributions
27
Describe Windows and what its used on
Graphical OS Started as interface with DOS, no longer is Used on PCs
28
Describe Mac OS and what its used on
Based on Unix. Graphical OS Used on PCs
29
Describe iOS and what its used on
Some Unix Basis. Touch Controls Used on iPhones
30
Describe Android and what its used on
Graphical OS. Touch Controls Used on Smartphones
31