|
Kernel1 : Data Structures Out : 2/3/04 In: 2/19/04 Kernel2 : The Scheduler Out : 2/19/04 in: 3/4/04 Kernel3 : Process Management Out 3/18/04 In: 4/9/04 Kernel4 : Semaphores Out : 4/15/04 In : 5/6/04 (absolute deadline) ================================================================ Solutions : kernel1.h (by Nick Gifford) kernel1.c (by Nick Gifford) kernel1 in C++ (by Jennifer Hussey and Angel Toledo) kernel2 (header and source - by Nick Gifford) Note that this considers 3 queues
=================================================================== * My .cshrc file is here (as html). You can ftp this file named as '.cshrc' in text format to your SUN account. You need to do 'csh' to enter C shell or 'source .cshrc' if you just want to run it so that path is valid. The important line is the path line, the rest is optional. * New kernel layers are to be e-mailed to park029@csusm.edu, not to me. * For any Solaris thread code : #include <thread.h>, for semaphores : #include <synch.h>, to compile and link at the same time gcc -o kernel2 kernel2.c -lthread (Assuming kernel2.c includes kernel1.c which includes kernel1.h) else do : gcc -o test2 kernel1.c kernel2.c test2.c -lthread to do it all. No inclusion is necessary * : when in csh, do the following : setenv LD_LIBRARY_PATH /usr/local/lib (either at command line or in .cshrc) * For those of you who still want to use gcc for C++ in the SUN, do the following 1. Set the LD_LIBRARY_PATH environment variable to include "/usr/local/lib", as said in class . Note, however, that the command: setenv LD_LIBRARY_PATH /usr/local/lib only works in the csh shell. The default shell that the sys admin set us up with is bash. To set the environment variable in the bash shell, use: export LD_LIBRARY_PATH=/usr/local/lib 2. Link with the C++ library. This can be done by using the following compilation command: gcc -lstdc++ filename.cpp
|