CSE3303 Week 3 (Oct 2-6)
This week started with a bonus quiz on Linux commands. The studty
material was an online tutorial I sent to the yahoogroup.
After the quizzes, we went over the questions and answered and
explained them. We talked about piping, redirection, wild cards. After
that, we recapped what we talked last week and introduced some new
stuff. Here are some highlights from what we talked about in class:
- More about non-preemptive and preemtive multi-tasking. We said a
modern preemptive OS also needs memory protection.
- Dual mode, protected mode, privileged mode, user node. Privileged
mode is also called kernel, master, supervisor, monitor mode. (Monitor
is waht some old people call the OS.) User mode is also called slave
mode.
- "Her process kendi coplugunde oter". Base registers. Limit
registers. Memory fragmentation. Disk fragmentation. 32 bits implies
4GB of memory. However, most PCs supported 2GB. We also said some
processes may have higher priority and get more CPU time.
- The layered (ie. modular) structure of UNIX. We also gave a list
of different UNIXes. We talked about Xwindows and its client/server
and distributed infrastructure.
- We went over the book and talked about a few things we skipped
before such as different types OSes: embedded OS, RTOS, distributed
OS.
- UNIX is really a distributed OS. Reserach: rsh and Xwindows
DISPLAY mechanism.
- What is an embedded system? Examples are router, microwave,
dishwasher, washing machine, etc. ALso mentioned were real-time
systems (RTOS) and fail-safe systems. The two are usually realted.
- Interrupts in a little detail. When an interrupt comes, it it is
non-maskable you have to drop everything you are doing and go to the
interrupt routine but if you do that you cannot cleanly go back to
where you were. However, in real-time systems, you have to immediately
go to the interrupt routine. So there is a conflict there.
- This week I gave some SWE lectures because Sezer was sick. We
talked about stuff there that are related to OS. These are: IDE, point
tools, DLL versus staticly linked libraries, compile in broad sense
versus compile (narrow meaning) plus linking, environment variables
(system and user), make program and its tree traversal scheme
(ie. depth-first).