Giter Site home page Giter Site logo

csapp-clab's Introduction

This is the handout directory for the C Lab. 

************************
Updating your Makefile
************************

You will first need to fix Makefile before you can use the autograders.
You must update the rule for qtest to include the queue.o as a requirement 
and use queue.o in the linking process.

************************
Running the autograders:
************************

Before running the autograders, compile your code to create the testing program qtest
    linux> make

Check the correctness of your code:
    linux> make test

******
Using qtest:
******

qtest provides a command interpreter that can create and manipulate queues.

Run ./qtest -h to see the list of command-line options

When you execute .qtest, it will give a command prompt "cmd>".  Type "help" to see a list of available commands


******
Files:
******

# You will handing in these two files
queue.h			Modified version of declarations including new fields you want to introduce
queue.c			Implementation of the queue methods

# Tools for evaluating your queue code
Makefile		Builds the evaluation program qtest
README			This file
driver.py*		The C lab driver program, runs qtest on a standard set of traces

# Helper files

console.{c,h}:		Implements command-line interpreter for qtest
report.{c,h}:  		Implements printing of information at different levels of verbosity
harness.{c,h}:		Customized version of malloc and free to provide rigorous testing framework
qtest.c			Code for qtest

# Trace files

traces/trace-XX-CAT.cmd Trace files used by the driver.  These are input files for qtest.
			They are short and simple.  We encourage to study them to see what tests are being performed.
			XX is the trace number (1-14).  CAT describes the general nature of the test.

trace/trace-eg.cmd:	A simple, documented trace file to demonstrate the operation of qtest

csapp-clab's People

Contributors

lukebriton avatar yiligong-whu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.