Introduction to Computer Science -- Computing Concepts
Learning the lingo
- Computer
- Collection of components that can perform arithmetic and logical
calculations at incredible speed
- Hardware
- Actual circuits and associated machinery that is visible as a computer
- Keyboard, monitor, disk, tape, floppy drive, camera, microphone
- Software
- Sequence of instructions/commands to make the computer perform a desired
task
- C is a language understood by the computer
- Program
- A sequence of instructions in a language understood by the computer
- Used for processing data
Computer Organization
Loosely defined by the following picture
- Input unit
- Eyes and ears of the computer
- Used to receive information from the outside world
- Connects to different input devices
- Keyboard, mouse, video camera
- Output unit
- Tongue/mouth, hands, and legs of the computer
- Used to communicate information, or to do something
- Monitor screen, printer, robotic arm
- CPU or Central Processing Unit
- Brain of the computer
- Talks to every other unit via the nervous system (buses or wires)
- Responsible for the behavior of every other unit in the system
- ALU or Arithmetic and Logical Unit
- Specialized part of the brain that is good at math and at making very simple
decisions
- May or may not be a separate unit compared to CPU
- Generally referred to as a math coprocessor
- Memory
- Used by the CPU to keep instructions and data
- CPU picks up an instruction from memory and acts on it
- Modified by the actions of the CPU
- Also known as RAM or Random Access Memory
- Secondary storage unit
- Long term storage for programs that are not in active use at the time
- Also used to keep data that needs to be stored for long term, such as files
in an office
Batch processing, multiprogramming, and timesharing
- Batch processing
- Job or task -- name for a certain process, may consist of running more than
one program
- Processing jobs one after the other
- Used in older computers, has different connotations now
- Multiprogramming
- Keeping many programs in the memory at the same time
- The CPU may divide its time
between these jobs
- Timesharing
- Time is evenly divided amongst users sitting on different terminals
- Requires interactive computing over terminals
Personal computing, distributed computing, and client/server computing
- Personal computing
- Started with the introduction of Apple computers in 1977
- IBM created a standard for the PC in 1981
- PCs are generally based on the microprocessor by Intel and almost invariably
run the operating system from Microsoft
- Some PCs run the OS/2 system from IBM while the free Unix for PCs -- Linux
-- is fast gaining in popularity with people who demand power
- Distributed computing
- Early PCs could be linked together in computer networks
- Today's computers are powerful enough to perform multiple tasks and to
handle several users simultaneously
- The idea is to distribute the load across several PCs rather than a single
mainframe computer
- Client/server computing
- Best exemplified by Netscape or other web browsers
- Information on the WWW is kept on the WWW server and is transmitted to the
Netscape or Explorer client when requested
- The information is formatted at the client site
- Other examples of client/server computing include the X window system
Different number systems: binary, hexadecimal, and decimal
Machine languages, assembly languages, and high-level languages
The Unix operating system
- Operating system
- A collection of programs that control and allocate resources in a computer
system -- both in hardware and software
Unix is a multi-user, multi-tasking operating system developed at the AT&T
Bell Labs and at the University of California -- Berkeley. It was mostly
developed through collective efforts by hackers. It can perform functions like
- Text/code editing and printing
- Document handling and storage
- Programming and software development
- E-mail, fax, networking, WWW
There are two major versions of Unix
- AT & T Sys V
- BSD
Student environment for Unix at UMSL
- Unix and X windows in the SSB lab
- Terminal-based Unix access from other computers and over modems
- Complete Unix and X windows on the home computers via Linux (recommended)
Logging in
- Your username is the letter `s' (lowercase) followed by your student-id
number (without the leading zeros)
- If your student-id is 000-12-3456, your username is s123456
- Your password is your social security number without the dashes
- Type in your username and password
- The system sets up a working environment for you, controlled by the
hidden files called .cshrc and .login
- If you get a ``login incorrect'' message, you need to retype your username
and password
- Unix is case sensitive, and therefore, you should be careful in what case
you type (uppercase letters v. lowercase letters)
- A general convention is to work in lowercase as much as possible, keeping
the uppercase free for special things
Logging into other machines -- Use the following commands
Logging out
- Use the logout command
- You can also use the exit
command, or simply CTRL-D
- You can also use the mouse to kill the window, or to conclude a session