Project 3 Grading Criteria

  1. Argument passing test using printArgs.c
    At the shell prompt, typing:

      /c/printArgs.exe arg1 arg2 ... argn

    should output:

     
    arg 0 = /c/printArgs.exe
    arg 1 = arg1
    ...
    arg n = argn
    
    Correctly printing all arguments gets 25 points.

  2. Testing for ampersand '&'
    At the shell prompt, typing:

     /c/long.exe & 
    should return the shell prompt immediately and long.exe should run in the background. This gets you 5 points.

  3. Semaphores using semtest1.c,p1.c, p2.c, and , p3.c At the shell prompt, typing:

     /c/semtest1.exe 
    should output
     
    Semtest1 begins
    p3 created
    Produced 0
    Consumed 0
    Produced 1
    Consumed 1
    Produced 2
    Consumed 2
    Produced 3
    Consumed 3
    Produced 4
    Consumed 4
    p3 executed
    
    Correct implementation of semaphores is worth 25 points.

  4. Semaphore invalid cases using semtest2.c
    semtest2.c
    will check handling of invalid arguments to semaphore operations. At the prompt typing:

     /c/semtest2.exe 
    should output (actual value returned by Init_Semaphore not important).
    + Identified unauthorized call
    + Identified invalid SID
    Init_Semaphore() called
    Init_Semaphore() returned 0
    P() called
    P() returned 0
    V() called
    V() returned 0
    Finish_Semaphore() called
    Finish_Semaphore() returned 0
    + Removed authority after finish
    
    Correct output gets you 10 points

  5. Scheduling using schedtest.c,sched1.c, sched2.c, and , sched3.c. At the prompt typing:

    /c/schedtest.exe [rr|mlf] 10
    should output a string consisting of many 1s and 2s and a single 3. 3 should never appear as the first character. A sample session is
    %/c/schedtest.exe rr 10 
    111111222222111111222222311111122222212
    %/c/schedtest.exe mlf 10 
    111112222221111113222222111111222222112
    

    A few trials runs will usually (but not certainly) show the 3 appearing earlier when running MLF than when running RR In case of doubt, code will be checked. Correct implementation of scheduling carries 30 points.

  6. INTERPRETATION file: the writeup is worth 5 points