Unit 1: Computer Systems

Introduction (suggested time spent: 50 mins)
Unit objectives:


 * 1) Define what a computer system is;
 * 2) Know the fundamental hardware components that make up a computer’s hardware and the role of each;
 * 3) Know the differences between an operating system and an application software;
 * 4) Name and describe each component inside the Input-Process-Output (IPOS) cycle;
 * 5) Name and describe examples of computer systems.

Definition
According to WordNet, a computer system is defined as, "A system of one or more computers and associated software with common storage."

The above definition explicitly named two components: hardware and software, sharing a common storage, as what constitutes a computer system. Plenty of examples out there. We use a computer system in banking, retails, health, travels, education ... basically any tasks that involve storing and processing of bulk data would benefit by being computerised. A computer system may consist of a standalone computer, or a grid of networked computers. It may require a single software, or a multitude of software. A computer system may even appear in a different form than your conventional concept of one, for example, you can find one inside your water heater!

Computer hardware
Let's start by learning about the common hardware of a standard desktop computer system by reading this article  (Required activity, 5 mins). How many can you name without looking at the legend?

Computer software
Hardware are useless, unless you consider room decoration as a valid purpose, if you can't give them instructions to do something. The instructions appear in the form of software, written in a programming language. Software can be categorised into two types: operating systems and applications. Watch this short video (Required activity, 2 mins) introducing the concept of operating system. What about applications? Or in short: apps? Learn about apps by watching this short video (Required activity, 2 mins). Now, let's look at this diagram CC BY-SA 3.0 (Required activity, 1 min). What does the diagram tells us? An application acts as the intermediary between the user and the operating system, whilst an operating system acts the intermediary between the application and the hardware. This concept is best explained by Figure 1 found in this page (Required activity, 1 min). The application, i.e., a word processor, handles user inputs and performs tasks. To do that, the application requires resources provided by the computer hardware, such as memory, CPU et cetera, and those resources are managed by the operating system.

The IPOS cycle
All computer systems operate based on the information processing cycle, also known as the Input-Process-Output (IPOS) cycle, and is explained in this video (Required activity, 5 mins). A computer system requires some form of inputs, which are later processed to generate outputs. Think of a computer system, e.g., an automated teller machine (ATM), or a self-checkout machine at your local supermarket. Can you identify the input(s), the process(es), and the output(s) (Required activity, 6 mins)?

Examples of computer systems
There is a restaurant in California USA, i.e., STACKED, that offer an innovative ordering approach using computer as the medium. Customers can customise their meal, paying only for the ingredients that they truly want. How cool is that? Watch this short video (Required activity, 2 mins) and salivate! Now, can you name the IPOS cycle components (Required activity, 6 mins)?

Please give two more examples (of a computer system) and identify the IPOS cycle components for each (Required activity, 3 mins)?

Advances in computer systems (suggested time spent: 50 minutes)
Unit objectives:


 * 1) Know what all the highlighted terms (in bold) in the text mean;
 * 2) State the reason for introducing each of the advances.

Wearable computers
Wearable computer is the next big thing in computing. It is defined as miniature electronic devices that are worn by the bearer under, with or on top of clothing (Mann, 1996). Examples are aplenty. We have all heard of Google Glass, a project by Google Inc., that is ultimately aimed to replace handheld smartphones. Apart from accessibility, these devices are worn on a specific part of the human body to either measure something, e.g., pulses and body temperature, or to capture data from our senses, e.g., vision and touch. This setup enables a passive monitoring of the user (and his or her environment), allowing the computer to pro-actively react to the user's (or the environment's) current state without needing any manual inputs.

Instead of wearing them, why not implant an actual computer inside your body?! Prof. Kevin Warwick of Reading University did just that by surgically inserting implants into his body! Watch his fascinating TEDx talk  here (Required activity, 21 mins).

Embedded computers
An embedded computer is a combination of special-purpose hardware and software designed to perform a specific task. The hardware typically consist of a single microprocessor board, with the software stored in Read-only memory (ROM). Since the system is dedicated to a specific task, it can be optimised by reducing the size and cost of the product by the removal of unnecessary features. Now, quickly scan your room. Can you find two examples of embedded computers inside your room? (Required activity, 5 mins).

Raspberry Pi is a credit-card sized computer, capable of many wonderful things. People are installing it inside electronic pet feeders, garden watering systems, home theaters et cetera, hence it can be classified as an embedded computer when used in that manner. Watch this animated video (Required activity, 2 mins) introducing Raspberry Pi, and this video discussing five Raspberry Pi projects (Required activity, 3 mins).

Computers as transparent helpers (suggested time spent: 20 minutes)
Unit objectives:


 * 1) Define what the term "Computers as Transparent Helpers" means
 * 2) List out scenarios requiring computers as transparent helpers

Overview
The idea of having a computer to make decision (not all!) for us is attractive since the human race is not known for preferring repetitive and mundane tasks. Computers are already making decisions for us i. in tasks that we sort of know how they work, but too lazy to execute them ourselves, e.g., parking a car, ii. in tasks that are too difficult to execute for an average person, e.g., Electronic Stability Control, and iii) in tasks that we do not have a clue how the process works, e.g., Ji et al.'s Real-Time Nonintrusive Monitoring and Prediction of Driver Fatigue , so we let the computer discovers the best (i.e., optimal) decision, based on hidden patterns gleaned from observed data.

As transparent helpers, computers are designed to be context aware. What this means is that the user does not need to manually insert an input into the computer system to invoke a process. Instead, the computer senses its physical environment, and adapt its behaviour accordingly. This is achieved via passive observations using sensors. For example, to park a car, the sensors would establish the spatial position of the car and the targeted parking space, as well as the obstacles that lie on the projected path. Note that the user does not need to manually enter this information into the system. Using this data, the computer calculates the best way to manoeuvre the car into the parking space.

Being context-aware is closely related to the ultimate vision of ubiquitous computing,

"The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it." M. Weiser (1991).

Transparent here refers to the computer disappearing - not in the physical sense, but from a psychological perspective.

Example scenarios
An example scenario where a computer acts as a transparent helper can be found in this work by Kris M. Kitani et al. To summarise, their algorithm detects the type of movement a person is performing, e.g., walk, jump, run et cetera, by analysing the camera's (worn on the person's body) motion. Watch this video (Required activity, 3 mins), and see the impressive accuracy of the detection results.

Imagine having this technology to aid you during your exercise routines. After each session, you can review how many times you had jumped, ducked, kicked, ran et cetera. You can also check the time duration for each movement. This information is useful to review one's performance after a session.

Can you think of two more scenarios that would benefit from having computers as transparent helpers (Required activity, 10 mins) ?

Multiple-choice questions

 * 1) Which of the followings best describes a computer system?
 * 2) *Computer(s) and associated software, with common storage.
 * 3) *A grid of networked computers.
 * 4) *A standalone computer.
 * 5) *A single-task computer, housed in a single microprocessor board.
 * 6) Hardware that is not part of the system unit is called ______.
 * 7) *a child device
 * 8) *a peripheral device
 * 9) *an optional device
 * 10) *an input device
 * 11) Which of the following manages the resources provided by the computer hardware?
 * 12) *The CPU.
 * 13) *The operating system.
 * 14) *The software application.
 * 15) *None of the above.
 * 16) Name the component(s) inside the IPOS cycle.
 * 17) *Input, Process, and Output.
 * 18) *Input and Output.
 * 19) *Input, Process, Output, and Storage.
 * 20) *Process and Storage.
 * 21) The followings are valid reasons for using a wearable computer, EXCEPT for ______.
 * 22) *accessibility
 * 23) *to take measurement
 * 24) *to capture data from any of the user's senses
 * 25) *cost reduction
 * 26) A/An ______ computer is a combination of special-purpose hardware and software designed to perform a specific task.
 * 27) *​wearable
 * 28) *embedded
 * 29) *dedicated
 * 30) *encapsulated
 * 31) Which of the followings contains an embedded computer?
 * 32) *Digital television
 * 33) *Washing machine
 * 34) *Analog radio
 * 35) *All of the above
 * 36) Being context-aware, a computer (as a transparent helper) must be able to ______.
 * 37) *make decision based on hidden patterns gleaned from observed data
 * 38) *sense its physical environment and adapt its behaviour accordingly
 * 39) *understand contextual information
 * 40) *All of the above.
 * 41) ______ observation refers to the act of observing the change in an entity's state without the entity being complicit.
 * 42) *Passive
 * 43) *Active
 * 44) *Reactive
 * 45) *Manual
 * 46) Which of the followings is a VALID example of computers being transparent helpers.
 * 47) *Your car's air-conditioning unit automatically adjust the inside's temperature according to the outside's temperature.
 * 48) *Your car's front headlights automatically adjust the direction they are facing when approaching sharp corners.
 * 49) *Your car's wipers automatically start when it is raining.
 * 50) *All the above.