The other answer mostly covered it, but I'd like to offer some additional comments. Firstly, note that 应该 can be used to indicate obligation. For instance:
你应该每晚刷牙 (You should brush your teeth every night.)
At least to me, there is a certain ambiguity to "should": depending on the context, the emphasis may be more on what is likely (e.g. to use your examples: He should be here by 7PM. and It should run in Windows 95.) than on obligation (e.g. I should have it done by Friday.).1 Thus, only some of your examples of "should" are about "what is probable or expected",
This is also the case with 应该, even when a time-frame (in the future) is specified:
他应该七点到---He should be here at 7. This reads as a statement about likelihood to me.
你应该星期五之前处理了这件事---You should deal with this matter before Friday. This indicates obligation to me, similar to my first example.
我应该星期五之前处理了这件事---I should deal with this matter before Friday. I get the sense that the focus is more on probability, without further context.
When obligation (as opposed to simple expectation) should be "read in" seems to depend on context. For the most part, however, I would be comfortable saying that 应该 can generally work as a translation for "should", at least in the most obvious examples.
- The issue of which uses of "should" have which connotations is interesting, but that's an English-language question.