CmpE 322 - F. A. Q.
What kind of a course is CmpE 322 ?
CmpE 322 is one of the most fundamental courses in the BU computer engineering
cirruculum. Therefore it's not hard to guess that it's not the easiest
! Traditionally students write programs in various programming languages
focusing on the functionality of the program without paying attention to how
they are compiled and executed on a computer. On the other hand, students
also come to realize that a computer is actually system with physical resources
(such as CPU cycles, memory, hard disk etc). So this course aims at closing
this gap in the mind of students - i.e. how can this system composed
of many hardware components be made to run our programs and others' programs
even if we do not much care about this in our original programs. There is
a third agent (other than our program and physical hardware) which arranges
all the abstractions for all necessary components of computer and lets us
and others use and share them in an efficent manner. This agent is called
an Operating System.and is the whole subject matter of this course.
Will the emphasis be on theory or on practice ?
Actually it will be on both. In regular class hours you will go over the fundamentals
of operating systems. This part will be the theroy part where content will
be independent of any particular OS. In the Lab/PS hours, however, full
emphasis will be on how the theory is applied in practical OS designs. Traditionally
our choice for the practice part is Linux.
What is meant by Lab/PS hours ?
Lab/PS hours is the generic name for the classes where practical side of OS
design is shown through Linux examples. In that sense they are regular classes
where students come to class. There is no computer lab specifically dedicated
to Linux. Therefore it's your own responsibility to have running linux distribution
at hand. In this course we assume you have minimum competence in installing
and using Linux.
Why Linux and not some other OS ?
There are many reasons for this choice. First of all because it's open source.
Do not forget that you will go into kernel level details and make modifications
down there in your term projects. This is not possible with MS products. Secondly
there is a very crowded Linux community on the net. Linux is a well documented
project . It's very easy to get help when you are stuck with a specific issue.
Of course there are other open source OSs out there but when compared to
Linux they can be classified as toy projects. So all experience you accumulate
during this course will be about a real OS and this is a nice feeling , if
nothing else.
Did you just say "term projects" ?
Yes we did ! Term project(s) is(are) one of the most important components
of this course (Both pedagogically and in terms of grading) Term projects
are the unique chances for you to apply and internalize all the course material
- both theory and practice.
What happens if I cannot get a passing grade from
the term projects ?
I can still pass the course if I did well in the exams,
can't I ?
We're afraid you cannot. Passing grade from the term project(s) is mandatory.If
you fail from the projects, you fail from the course no matter what grades
did you get in the exams. As mentioned above, in this course theory and practice
are equally important and doing fine in the exams indicate competence in
theory part only.
Do we expect questions from material shown in PS/Lab classes
?
Yes. All of the exams will consist of questions (weighing about up to 20% - 35%)
related to PS/Lab classes.