% Copyright (c) 2008-2009 solvethis % Copyright (c) 2010-2016,2018 Casper Ti. Vector % Public domain. % % 使用前请先仔细阅读 pkuthss 和 biblatex-caspervector 的文档, % 特别是其中的 FAQ 部分和用红色强调的部分。 % 两者可在终端/命令提示符中用 % texdoc pkuthss % texdoc biblatex-caspervector % 调出。 % 采用了自定义的(包括大小写不同于原文件的)字体文件名, % 并改动 ctex.cfg 等配置文件的用户请自行加入 nofonts 选项; % 其它用户不用加入 nofonts 选项,加入之后反而会产生错误。 \documentclass[UTF8,openany]{pkuthss} % 如果的确须要使脚注按页编号的话,可以去掉后面 footmisc 包的注释。 % 注意:在启用此设定的情况下,可能要多编译一次以产生正确的脚注编号。 %\usepackage[perpage]{footmisc} % 使用 biblatex 排版参考文献,并规定其格式(详见 biblatex-caspervector 的文档)。 % 这里按照西文文献在前,中文文献在后排序(“sorting = ecnyt”); % 若须按照中文文献在前,西文文献在后排序,请设置“sorting = cenyt”; % 若须按照引用顺序排序,请设置“sorting = none”。 % 若须在排序中实现更复杂的需求,请参考 biblatex-caspervector 的文档。 \usepackage[backend = biber, style = caspervector, utf8]{biblatex} \usepackage{minted} \usepackage{multirow} \setminted{frame=single,linenos=true} % 对于 linespread 值的计算过程有兴趣的同学可以参考 pkuthss.cls。 \renewcommand*{\bibfont}{\zihao{5}\linespread{1.27}\selectfont} % 按学校要求设定参考文献列表的段间距。 \setlength{\bibitemsep}{3bp} % 显示4级标题,TODO: 减少标题级数 \setcounter{secnumdepth}{3} % 设定文档的基本信息。 \pkuthssinfo{ cthesisname = {硕士研究生学位论文}, ethesisname = {Master Thesis}, ctitle = {针对推测式执行侧信道攻击的微处理器的优化设计}, etitle = {A Microprocessor Design to Defend against Speculative Execution Side-channel Attacks}, cauthor = {蔡思培}, eauthor = {Cai Sipei}, studentid = {1601214426}, date = {二〇一九年五月}, school = {信息科学技术学院}, cmajor = {计算机系统结构}, emajor = {Computer Architecture}, direction = {指令级并行处理和线程级并行处理}, cmentor = {程旭 \quad 教授}, ementor = {Prof.\ Cheng Xu}, ckeywords = {侧信道攻击,推测式执行,Spectre攻击}, ekeywords = {Side-channel Attack, Speculative Execution, Spectre Attack} } % 载入参考文献数据库(注意不要省略“.bib”)。 \addbibresource{thesis.bib} \newcommand{\Fault}[1]{\texttt{\#}#1} \newcommand{\Todo}{\textbf{TODO}} \newcommand{\Fixme}{\textbf{FIXME}} \usepackage{caption} \newenvironment{code}{\captionsetup{type=listing}}{} \begin{document} % 以下为正文之前的部分,默认不进行章节编号。 \frontmatter % 此后到下一 \pagestyle 命令之前不排版页眉或页脚。 \pagestyle{empty} % 自动生成封面。 \maketitle % 版权声明。封面要求单面打印,故须新开右页。 \cleardoublepage \include{chap/copy} % 此后到下一 \pagestyle 命令之前正常排版页眉和页脚。 \cleardoublepage \pagestyle{plain} % 重置页码计数器,用大写罗马数字排版此部分页码。 \setcounter{page}{0} \pagenumbering{Roman} % 中西文摘要。 \include{chap/abs} % 自动生成目录。 \tableofcontents \renewcommand*\listfigurename{图目录} \listoffigures \renewcommand*\listtablename{表目录} \listoftables % 以下为正文部分,默认要进行章节编号。 \mainmatter % 各章节。 \include{chap/chap1} \include{chap/chap2} \include{chap/chap3} \include{chap/chap4} \include{chap/chap5} \include{chap/chap6} % 正文中的附录部分。 \appendix % 排版参考文献列表。bibintoc 选项使“参考文献”出现在目录中; % 如果同时要使参考文献列表参与章节编号,可将“bibintoc”改为“bibnumbered”。 \printbibliography[heading = bibintoc] % 各附录。 \include{chap/encl1} % 以下为正文之后的部分,默认不进行章节编号。 \backmatter % 致谢。 \include{chap/ack} % 原创性声明和使用授权说明。 \include{chap/origin} \end{document} % vim:ts=4:sw=4