大三上

大三上还有很多限选课,欢迎补充!

VLSI设计导论

 VLSI设计导论

感觉是一门被埋没的好(shui)课,没有平时作业,上课也不点名(2018年秋季学期),上过的都说给分好(样本量2)。唯一的任务就是从给定的题目中选一个做大作业,基本上都是电路设计中的算法问题(布图规划,布局,布线,时钟综合,供电网络分析)。整个学期一共需要交一个选题报告,一个总结报告,做一次课堂展示。

	 大作业  
  • 静态供电网络分析(by Zhengxiao Du):https://github.com/duzx16/PGsolver欢迎添加。

人机交互理论与技术

信号处理原理

 Tips

作业也不算多。每次书面抄抄祖传答案。还好选的是贾珈的,选陶霖密的真的是上辈子造了什么孽……

最后一次小波变换,陶霖密讲,要点名上去开自己ppt汇报paper阅读心得。蛤主席:“大家越来越会打太极了,汇报的东西和paper没什么关系,倒全是课件里面的内容”

17周周六考,花了两天复习。16周周六到17周周三都在看四大原理的ppt,没怎么听课得先预习一波。

有很多往年卷,看完ppt发现不会做。然后060713有答案,对着这几份train一波,发现大部分会做了。

于是考试傻眼了:FFT各种性质没背,还有各种结论,只能现推。

PS: 8字班、9字班的编程作业已经改为傅里叶级数、频分复用、滤波器三个Python实验。参考资料

数据库系统概论

 数据库系统概论

代码量略大,尤其是和软工和计原处在同一学期略微有点蛋疼。可能大二上修比较好。

有一些没什么任务量的小作业。主要任务是要写一个数据库,支持基本的SQL语句和索引功能,和CS346 Redbase project( https://web.stanford.edu/class/cs346/2015/redbase.html )基本一样。

数据库一个人写可以拿到110%的分,实现完基本功能(包括利用索引加速查询和多表Join查询——这两个在评分的时候好像算附加功能)基本就A了,不放心再加两个小功能,单人完成绝对物超所值。

	 大作业

https://github.com/Harry-Chen/SimpleDB by Shengqi Chen

https://github.com/duzx16/MyDB by Zhengxiao Du and Yifan Wu

https://github.com/gjz010/slowql by Jingzhe Guo

https://github.com/qinyao-he/wxyDB by Qinyao He

https://github.com/wangrunji0408/DBProject by Runji Wang

https://github.com/miskcoo/TrivialDB by Yuhao Zhou

https://github.com/huzecong/rebaseDB by Zecong Hu and Yilong Wei

https://github.com/RecursionSheep/DBNoC by Zhiyang Chen

https://github.com/MashPlant/db by Chenhao Li

https://github.com/ZYFZYF/RoboDBMS by Yunfeng Zhao

https://github.com/rcy17/pybase by rls (implemented with Python)

https://github.com/Btlmd/dbs-tutorial by lambda & c7w (C++)

https://github.com/liang2kl/simpledb by Yesheng Liang

		 2021

https://thu-db.github.io/dbs-tutorial/

选课同学主要感受大作业工作量远大于课程的2学分,此外还有文档实现指导(截止2021学期结束)太过简略,期末检查测例比较难(且不会提前公布)等问题。

编译原理

 Tips

作业就写PA,书面作业抄往年答案之后自己脑补脑补也会做了。

https://github.com/Trinkle23897/decaf-complier

据说PA1B有12个人被抓了,理由是jar的校验码一样。

	 考试

我只有不到一天的时间看编译

看了看作业题,发现不会,回去看lecture回炉重造

看完lecture已经晚上10点了,睡半个小时起来做考卷

做到两点半,睡三个小时,起来接着做

六点多下楼吃饭,七点到教室,开始看PA代码

八点考试考到十点20

反正看完lecture之后去考试体验还行,弄来弄去也就那些题

 2019 Update

今年框架有了比较大的更新,从此以后旧的资源的作用可能就比较小了。不过其实我一直觉得往届的PA资源没什么用,出个新特性还不简单吗,而特性不一样的话自己要写的代码就完全不一样了。

更加有用的还是同届的资源,不过要提醒一下助教不止会看jar的校验码是否一样哦。

虚拟现实技术

 2021

https://cg.cs.tsinghua.edu.cn/course/vr/portfolio.html

平均三人一套 Oculus Quest 2,小作业编程部分今年变成了代码填空,难度比去年降低;大作业和 VR 相关可自主选题,验收对实现效果要求不高,可卷可摸。

计算机组成原理

 Tips

报了32位“挑战组”,可是感觉比16位普通和32位普通都要水,因为造机周期不是像普通组的三星期,而是分散在整个学期,而且大量现成代码位于《自己动手写CPU》,不像16位只能看祖传VHDL没有注释的代码。和软工比起来不需要uCore,不用写详细文档。

平时造机大概是这个画风:

第十周检查上板子,现在第七周

第八周,干别的

第九周,干别的

第十周,什么这周五检查?抄一抄代码

都什么玩意垃圾代码,运行都运行不起来,思考

魔改一通,跑起来了,有bug

魔改一通,过仿真了,上板子有bug

问别人看怎么解决,然后就解决了

一定要用好的机子造机!!!还好我双11买了新机器,正常的i7要20分钟,我的机子4分钟编译完

	 考试

18周周三考,花一整天的时间复习

花了一个上午下午搞明白cache工作原理,ppt讲的不清不楚,还是csapp好。

剩下的随便看看,对着往年题train几轮。

考试的时候:分支预测有如下模式:T F T T F,一直循环,1. 请设计电路输出这个模式串;2. 请设计电路,输入真实结果,输出下一个预测结果,此时模式串有两种,还有一个是取反

what???考数电???exm???有毒吧

当场回忆,还好回忆起来了,D触发器是个什么东西,然后xjb画了画

还有什么RAID6,不会,说好的只考RAID1和45(指往年题

计算机网络原理

 Tips

要造路由器 https://github.com/Trinkle23897/router/

exp1就是去实验室跟着助教操作一波,不细表

exp2开始写代码,框架十分丑陋,只能照着蛤主席的hint.pdf来写,顺便把整个框架基本重写了一遍,什么接口都改了改,从gcc upgrade到g++

exp3写rip,难点不在rip算法,在于udp的发包、收包、组播。问了蛤主席和dzx好几次,终于套出来能用的代码。

exp4合并,蛤主席拉了dzx、牛神和我到一个群里,说一起检查。然后检查的时候就一会儿这里出锅一会儿那里出锅。不过还好一个小时之后调通了。什么拿空气当做介质,不说了。

additional是写trie加速路由表查询,我不想写trie,一坨指针看起来就不优美,虽然会写是会写。然后就写了个数组交了上去,实测和4路压缩的trie差不多快。

听说早写完有一定的加分,于是就早写完了,比如exp4第一组检查,exp3第二周检查,exp2第三周检查

18周周一考,一天半的时间可以复习

我之前看过一遍wjp的ppt,不会做题。然后又看了一遍xmw的ppt,还是不太会做。只能对着往年题,看到一道不会的,就打开ppt ctrl+f搜答案。勉强会一些。反正就各种背,背书能力在短时间内能够得到大幅度提高。

感谢大佬们的中听讲座。

花了半天搞懂TCP拥塞控制

考试体验还行,大量往年题出现。还好不考滑动窗口大题,没怎么搞明白这玩意。

 2019 Update

今年框架有更新,现在框架本身和我们的实现都更加清晰简单了,看往年代码感觉乱七八糟的…

https://github.com/MashPlant/Router-Lab ,写的很水,没做什么复杂的优化,现在路由查询的速度几乎对成绩没有任何影响了,保证正确性即可。

考试感想:也许题目可以不是原题,可以有新意,但是为了考好,还是只需要硬记ppt和拟合往年题就完事了。计算机系的课程大抵都是这样的吧。

今年有考滑动窗口大题,这个还是挺重要的。

计算机网络安全技术

 Tips

作业不算多,搞packet tracer,第一次直接照着祖传报告操作,虽然第二次也差不多,但是题目改了改,不会。

感觉完全就是计算机网络配置技术……完全就没有安全的事情,packet tracer对于安全的理解我个人认为没有多大帮助,而且尹霞几乎就是按照计算机网络那本书的网络安全那一章讲课,照本宣科。

16周周五开卷

交完卷子才发现,S-DES的最后一步本来是id^-1,我弄成id了;什么ipSec SADB如果收到了个奇怪的包,我写直接丢包,没想到ppt某个角落真的有解决方案,没翻到。只能说自己菜了。

 计算机网络安全技术2019



			 考察方式

今年(2019年)是10%出勤分,40%实验,50%考试

出勤分本来是课上有 3次点名,但是老师说出勤率挺高的,所以一次名都没点过,今年这 10分白给。

40%实验分,分2次实验。有2次实验课,助教会在课上带着我们把实验90%以上的内容都做一遍,几乎手把手带那种,课上跟着他做基本上课下不用花什么时间就能做完。第一次实验课前把软件装好,实验课上跟着做,课下如果哪里不太懂查百度就好了。个人觉得配置VPN那道题对理解IPSec是真的有帮助

50%考试分。今年是闭卷所以题目比较简单

考试题型:

  • 10道判断题

    • 题型大致是和概念相关那种
    • 目前能记得的几道题:
      • 非对称密码一定比对称密码更加安全
      • 以下几种算法中,只有AES没有使用Feistel结构
      • 扩散就是是密文和密钥的关系更加复杂
      • CIA包括保密性、继承性、可用性
  • 手算密码题

    • 凯撒+playfair+Hill
    • DH+S-DES(给出算法流程,这个非常容易算错)
    • Enigma
  • 简答题

    • 如何实现数字签名+认证+加密

    • 解释屏蔽子网结构

      • 画图
      • 这个我没画好orz
    • IPsec部分安全关联组合

      • 参考往年题考安全关联组合的题型
    • 无线网络安全,无线网络连接过程+安全隐患

      • 这是今年请了专家讲座,讲座里讲到的内容,不一定每年都一样
    • 软件入侵基础:给出一段软件入侵的描述,分析都具有哪些恶意软件的特征

      • 就是要写这个恶意软件是木马吗,是病毒吗,等等,以及为什么它是

          	 一些学习建议
        
  • 听课比较重要

    • 当然不来听课也不会错过什么重要内容,老师的PPT写得挺清楚的 但是主要是PPT上流程图比较多,有些图可能自己看要看好一阵子才能明白,但是如果来听老师讲课的话会少花不少时间。 实验课在课上跟着助教做一遍也会省很多事情
    • 另一个原因是,老师上课会时不时强调考试重点是什么,考试的话会怎么考
    • 最重要的一节课是15周的课,老师会给出复习提纲并讲一遍,每个知识点的考察方式也会讲。 号称大纲上有80%的考点,实际上好像考点100%都在上面了,我猜老师这样说是为了让大家别考啥就只看啥
  • 助教特别好

    • 问很傻的问题也会给耐心解答那种好助教
  • 考试没啥难度,按照老师给的提纲背PPT就好了

  • 总之是个讲的内容比较基础的背PPT概论课

      		 课程内容
    

这个我很难给出一个概述

看PPT和课程提纲叭orz

 2021

和上面基本一样,作业换了个故事,考试背大纲+原题就行

软件工程