Know the stuff from the last exam. There will not be any questions on this exam that are exclusively about the material from the last one, but there may well be questions that ask you to related the new material and the old.
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
What is an animated GIF
Flash
Layers
What is tweening
What are vector graphics, what’s their relation to bitmap/raster graphics