-
Notifications
You must be signed in to change notification settings - Fork 224
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
36 changed files
with
2,360 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
.SILENT: | ||
|
||
.PHONY: all clean | ||
|
||
LATEX = pdflatex | ||
PAPER = main_book | ||
OUTPUT = ece252_manual.pdf | ||
|
||
main: | ||
$(LATEX) $(PAPER) | ||
bibtex $(PAPER) | ||
$(LATEX) $(PAPER) | ||
mv $(PAPER).pdf $(OUTPUT) | ||
|
||
clean: | ||
rm -f *~ $(PAPER).dvi $(PAPER).log $(PAPER).pdf $(PAPER).ind $(OUTPUT) | ||
rm -f $(PAPER).bbl $(PAPER).blg $(PAPER).ps $(PAPER).aux | ||
rm -f $(PAPER).out $(PAPER).lot $(PAPER).lof $(PAPER).toc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
\chapter{Forms} | ||
Lab administration related forms are given in this appendix. | ||
\newpage | ||
\begin{center} | ||
{\bf ECE252 Request to Leave a Project Group Form} | ||
\end{center} | ||
|
||
\begin{table*}[h] | ||
\begin{center} | ||
\begin{tabular}{|p{6cm}|p{6cm}|} | ||
\hline | ||
Name: & \\ \hline | ||
Quest ID: & \\ \hline | ||
Student ID: & \\ \hline | ||
Lab Assignment ID & \\ \hline | ||
Group ID: & \\ \hline | ||
Name of Other Group Members: & \\ \hline | ||
\end{tabular} | ||
\end{center} | ||
\end{table*} | ||
|
||
Provide the reason for leaving the project group here: | ||
|
||
\vspace{9cm} | ||
|
||
\begin{table*} | ||
\begin{center} | ||
\begin{tabular}{p{6cm} p{1cm} p{6cm}} | ||
Signature && Date \\ | ||
\cline{1-1} | ||
\cline{3-3} | ||
\end{tabular} | ||
\end{center} | ||
\end{table*} | ||
%%% Local Variables: | ||
%%% mode: latex | ||
%%% TeX-master: "main_book" | ||
%%% End: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
%========================================================== | ||
% BIBLIOGRAPHY | ||
%========================================================== | ||
|
||
\bibliographystyle{plain} | ||
\bibliography{main} | ||
\renewcommand{\bibname}{References} % for the report or book class | ||
\addcontentsline{toc}{chapter}{\textbf{References}} % for book/report class | ||
%\renewcommand{\refname}{References} % for the article class | ||
%\addcontentsline{toc}{section}{\textbf{References}} % for article class |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
helloworld.out: helloworld.o | ||
gcc -o helloworld.out helloworld.o | ||
|
||
helloworld.o: helloworld.c | ||
gcc -c helloworld.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
helloworld.out: helloworld.c | ||
gcc -o helloworld.out helloworld.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
helloworld.out: helloworld.c | ||
gcc -o helloworld.out helloworld.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
helloworld.out: helloworld.o | ||
gcc -o helloworld.out helloworld.o | ||
helloworld.o: helloworld.c | ||
gcc -c helloworld.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
all: app.out | ||
app.out: src1.o src2.o | ||
gcc -o app.out src1.o src2.o | ||
src1.o: src1.c | ||
gcc -c src1.c | ||
src2.o: src2.c | ||
gcc -c src2.c | ||
clean: | ||
rm *.o app.out |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Makefile to build app.out | ||
CC=gcc | ||
CFLAGS=-Wall -g | ||
LD=gcc | ||
LDFLAGS=-g | ||
|
||
OBJS=src1.o src2.o | ||
|
||
all: app.out | ||
app.out: $(OBJS) | ||
$(LD) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) | ||
.c.o: | ||
$(CC) $(CFLAGS) -c $< | ||
.PHONY: clean | ||
clean: | ||
rm -f *.o *.out |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#include <stdio.h> | ||
#include <stdlib.h> | ||
|
||
int main() | ||
{ | ||
printf("Hello World!\n"); | ||
exit(0); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#include <stdio.h> | ||
#include <stdlib.h> | ||
|
||
int main() | ||
{ | ||
printf("Hello World!\n"); | ||
exit(0); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
helloworld.out: helloworld.o | ||
gcc -o helloworld.out helloworld.o | ||
|
||
helloworld.o: helloworld.c | ||
gcc -c helloworld.c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
\frontmatter | ||
|
||
% title page, list of tables, list of figures | ||
\input{frontmatter_title} | ||
|
||
%Brief overview of the document, acknowledgement, disclaimer | ||
\chapter{Preface} | ||
|
||
\section*{Who Should Read This Lab Manual?} | ||
This lab manual is written for students who are taking Electrical and Computer Engineering (ECE) Systems Programming and Concurrency course ECE252 in the University of Waterloo. | ||
|
||
\section*{What is in This Lab Manual?} | ||
|
||
The first purpose of this document is to provide the descriptions of each laboratory project. | ||
The second purpose of this document is a quick reference guide of the relevant development tools | ||
for completing laboratory projects. This manual is divided into three parts. | ||
|
||
Part I describes the lab administration policies | ||
|
||
Part II is a set of course laboratory projects as follows. | ||
|
||
\begin{itemize} | ||
\item Lab1: Introduction to systems programming in Linux computing environment | ||
\item Lab2: Multi-threaded concurrency programming with blocking I/O | ||
\item Lab3: Inter-process communication and concurrency control | ||
\item Lab4: Parallel web crawling | ||
\item Lab5: Single-threaded concurrency programming with asynchronous I/O | ||
\end{itemize} | ||
|
||
Part III is a quick reference guide of the Linux software development tools. We will be using Ubuntu 18.04 LTS operating system. Materials in this part needs to be self-studied before lab starts. | ||
The main topics are as follows. | ||
|
||
\begin{itemize} | ||
\item Linux hardware environment | ||
\item Editors | ||
\item Compiler | ||
\item Debugger | ||
\item Utility to automate build | ||
\item Utility for version control | ||
\end{itemize} | ||
|
||
|
||
% A C K N O W L E D G E M E N T S | ||
% ------------------------------- | ||
|
||
\section*{Acknowledgments} | ||
|
||
We are grateful that Professor Patrick Lam shared his ECE459 projects with us. Eric praetzel has provided continuous IT support, which makes the Linux computing environment available to our students. | ||
|
||
We would like to sincerely thank our students who took ECE254 and ECE459 courses in the past few years. They provided constructive feedback every term to make the manual more useful to address problems that students would encounter when working on each lab assignment. | ||
|
||
%%% Local Variables: | ||
%%% mode: latex | ||
%%% TeX-master: "main_book" | ||
%%% End: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
% T I T L E P A G E | ||
% ------------------- | ||
% This file goes along with the master LaTeX file uw-ethesis.tex | ||
% Last updated May 27, 2009 by Stephen Carr, IST Client Services | ||
% The title page is counted as page `i' but we need to suppress the | ||
% page number. We also don't want any headers or footers. | ||
\pagestyle{empty} | ||
\pagenumbering{roman} | ||
|
||
% The contents of the title page are specified in the "titlepage" | ||
% environment. | ||
\begin{titlepage} | ||
\begin{center} | ||
\vspace*{1.0cm} | ||
|
||
\Huge | ||
{\bf Electrical and Computer Engineering (ECE) Systems Programming and Concurrency ECE252 Laboratory Manual} | ||
|
||
\vspace*{1.0cm} | ||
|
||
\normalsize | ||
by \\ | ||
|
||
\vspace*{1.0cm} | ||
|
||
\Large | ||
Yiqing Huang \\ | ||
Jeff Zarnett | ||
|
||
\vspace*{3.0cm} | ||
|
||
\normalsize | ||
Electrical and Computer Engineering Department \\ | ||
University of Waterloo \\ | ||
|
||
\vspace*{2.0cm} | ||
\makeatletter | ||
Waterloo, Ontario, Canada, \@date \\ | ||
\makeatother | ||
|
||
|
||
|
||
\vspace*{1.0cm} | ||
|
||
\copyright\ Y. Huang and J. Zarnett 2019 \\ | ||
\end{center} | ||
\end{titlepage} | ||
|
||
% The rest of the front pages should contain no headers and be numbered using Roman numerals starting with `ii' | ||
\pagestyle{plain} | ||
\setcounter{page}{2} | ||
|
||
\cleardoublepage % Ends the current page and causes all figures and tables that have so far appeared in the input to be printed. | ||
% In a two-sided printing style, it also makes the next page a right-hand (odd-numbered) page, producing a blank page if necessary. | ||
%\newpage | ||
|
||
\cleardoublepage | ||
%\newpage | ||
|
||
% T A B L E O F C O N T E N T S | ||
% --------------------------------- | ||
\tableofcontents | ||
\cleardoublepage | ||
%\newpage | ||
|
||
% L I S T O F T A B L E S | ||
% --------------------------- | ||
\listoftables | ||
\addcontentsline{toc}{chapter}{List of Tables} | ||
\cleardoublepage | ||
%\newpage | ||
|
||
% L I S T O F F I G U R E S | ||
% ----------------------------- | ||
\listoffigures | ||
\addcontentsline{toc}{chapter}{List of Figures} | ||
\cleardoublepage | ||
%\newpage | ||
|
||
% L I S T O F S Y M B O L S | ||
% ----------------------------- | ||
% \renewcommand{\nomname}{Nomenclature} | ||
% \addcontentsline{toc}{chapter}{\textbf{Nomenclature}} | ||
% \printglossary | ||
% \cleardoublepage | ||
% \newpage | ||
|
||
% Change page numbering back to Arabic numerals | ||
\pagenumbering{arabic} | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.