Distributed
processing
definition – Collection of hardware, software, and communication devices among which tasks are spread.
May be very coordinated (multiprocessor computer) or very open (Internet)
All networks are distributed systems, but not all distributed systems are networks.
Parallel processing
Be able to read and create CPM charts, given a list of tasks with their dependencies and times.
Be able to use a CPM chart to decide how to assign tasks to parallel processors.
Network architecture
Draw and recognize bus, ring, star, hierarchy, network (fully-distributed and irregular) and hybrid
Give strong and weak points of each
Privacy
Security
External
Internal
Cost
Reliability
Network protocols
Reason for layer architectures
OSI
Names of layers
Basic jobs of each
Internet 4-layer model
Names of layers
Task of each in communication at source, destination, and final nodes
TCP/IP (including UDP)
IP addresses
Symbolic domain names
URL’s – identify all parts
Token ring
CSMA/CD
Search engines
Two types, keyword and concept-based (thematic)
Use of metatags to guide search engine robots
Web basics
Location and protection of Web documents in your H: drive
Basic tags
<HTML>
<HEAD>
<BODY> bgcolor, background, text, link, vlink attributes
<TITLE>
<BR>
<P>
<UL>
<OL>
<LI>
<IMG> src, border attributes
<A>
<FONT> color attribute
<CENTER>
Color codes
Be able to interpret codes; predict colors in simple cases (black, white, red, green, blue, purple) and be able to tell which of two colors is darker.
Contention
Deadlock
Be able to construct, identify deadlock from two processes
Know the three conditions necessary for deadlock (sufficient?)
Cannot predict and avoid
Cannot (perfectly) detect or resolve.
Can prevent absolutely by denying one of three conditions (but at what cost?)
Can reduce by good programming practices (what practices?)
Use as few unsharable resources as possible
Do not overlap use of unsharables more than necessary
Can recover from deadlock-caused losses by good programming practices
Logs
Rollbacks
BACKUPS!!!
Can prevent with test_and_set – cooperation between system and good,
conscientious, knowledgeable programmers
Lost update
Be able to construct, identify lost update from two processes
Locking
Granularity
Be particularly clear about the difference between lost update and deadlock – they’re related but very different. Both caused by two processes that share resources (broadly defined) but one results in loss of data (often without any sign that it has happened) and one results in loss of use of resources and lockup of processes, and is usually VERY obvious.
Photoshop
Layers
What are GIF and JPEG?
Why are they important?
What is an animated GIF?
Why use it instead of Flash?
Flash
Layers
What is tweening
What are vector graphics, what’s their relation to bitmap/raster graphics
XML
Why separate content (data) and formatting
XML document defines data structure
Stylesheet (XSL) defines formatting
Cycle-sharing –
How
Why are machine cycles called “perishable commodities”?
Why would anyone do this
advantages
dangers
Seti@home problem
Cycle brokers (future?)