| \documentclass[10pt,twocolumn]{book} |
| |
| % standard packages |
| |
| % A more pleasant font |
| \usepackage[T1]{fontenc} % use postscript type 1 fonts |
| \usepackage{textcomp} % use symbols in TS1 encoding |
| \usepackage{mathptmx,helvet,courier} % use nice, standard fonts for roman, sans and monospace respectively |
| |
| % Improves the text layout |
| \usepackage{microtype} |
| |
| \usepackage{lscape} |
| \usepackage{epsfig} |
| \usepackage{subfigure} |
| % \usepackage{breakurl} |
| \usepackage{graphicx} |
| \usepackage{enumerate} |
| \usepackage{ifthen} |
| \usepackage{listings} |
| \lstset{basicstyle=\ttfamily} |
| % \usepackage[strings]{underscore} |
| % \usepackage{underscore} |
| \usepackage[bookmarks=true,bookmarksnumbered=true,pdfborder={0 0 0}]{hyperref} |
| |
| % custom packages |
| |
| \usepackage{qqz} |
| \usepackage{origpub} |
| |
| \begin{document} |
| |
| %%HTMLSKIP |
| \lstset{ |
| literate={\_}{}{0\discretionary{\_}{}{\_}}% |
| } |
| %%HTMLNOSKIP |
| \newcommand{\co}[1]{\lstinline[breaklines=yes,breakatwhitespace=yes]{#1}} |
| |
| \title{Is Parallel Programming Hard, And, If So, What Can You Do About It?} |
| \author{ |
| First Edition Release Candidate 3 \\ |
| \\ |
| \\ |
| \\ |
| Edited by: \\ |
| \\ |
| Paul E. McKenney \\ |
| Linux Technology Center \\ |
| IBM Beaverton \\ |
| \href{mailto:paulmck@linux.vnet.ibm.com}{paulmck@linux.vnet.ibm.com} \\ |
| } % end author |
| % \date{\ } |
| |
| \setcounter{topnumber}{3} |
| \renewcommand\topfraction{.75} |
| \setcounter{bottomnumber}{2} |
| \renewcommand\bottomfraction{.3} |
| \setcounter{totalnumber}{5} |
| \renewcommand\textfraction{.15} |
| \renewcommand\floatpagefraction{.5} |
| \setcounter{dbltopnumber}{3} |
| \renewcommand\dbltopfraction{.75} |
| \renewcommand\dblfloatpagefraction{.5} |
| |
| \setlength{\textheight}{8.25in} |
| \setlength{\textwidth}{6.5in} |
| \setlength{\columnsep}{0.25in} |
| |
| \newboolean{inbook} |
| \setboolean{inbook}{true} |
| \newcommand{\IfInBook}[2]{\ifthenelse{\boolean{inbook}}{#1}{#2}} |
| \setcounter{secnumdepth}{3} |
| |
| \frontmatter |
| |
| \maketitle |
| \input{legal} |
| \tableofcontents |
| \input{preface} |
| |
| \mainmatter |
| |
| \input{intro/intro} |
| \input{cpu/cpu} |
| \input{toolsoftrade/toolsoftrade} |
| \input{count/count.tex} |
| \input{SMPdesign/SMPdesign} |
| \input{locking/locking.tex} |
| \input{owned/owned.tex} |
| \input{defer/defer.tex} |
| \input{datastruct/datastruct.tex} |
| \input{debugging/debugging} |
| \input{formal/formal} |
| \input{together/together.tex} |
| \input{advsync/advsync.tex} |
| \input{easy/easy.tex} |
| % \input{memalloc/memalloc.tex} @@@ covered in SMPdesign |
| \input{future/future.tex} |
| |
| % @@@ Conclusion/summary or something, along with "use the right tool" cartoon. |
| |
| \appendix |
| |
| \input{appendix/appendix.tex} |
| |
| % Index at some point... |
| |
| \end{document} |