CS170 Lab 2 (jshell) -- Scoring Criteria

Here is the scoring criteria for lab 2, based on 10 questions, together amounting to 100 points:

  1. [5] Where there warnings during compilation? Compilers vary in how picky they are, but we expect no warnings when compiling with gcc -Wall on CSIL systems. (However, no points were docked for warnings during compilation with -Wall flag since you were given a makefile without that flag.)

  2. [5] How readable is the code? Meaningful variable names and helpful comments improve readability. Logical, simple structuring helps, too.

  3. [10] What was the quality of the code? Points will be docked for unused variables, illogical organization of code, for grossly inefficient use of memory, and for significant unnecessary code.

  4. [5] Could the shell execute a single command with relative path?

  5. [5] Could the shell execute a single command with absolute path?

  6. [10] Could the shell execute multiple commands?

  7. [10] Could the shell pass multiple parameters to multiple commands?

  8. [10] Did the shell implement background processes correctly? (For example, running "date" twice, separated by a background command, should result in time values that are the same or, at worst, a second apart.)

  9. [20] Did the shell implement file redirection correctly? This includes appending to versus clobbering an existing file. This also includes printing a meaningful error message when input or output redirection is not possible.

  10. [20] Did the shell implement pipes correctly?