/Computer-basics

💎🔥计算机基础理论知识总结、计算机专业经典书籍读书笔记

Primary LanguageC

Computer-basics

计算机基础理论知识总结、计算机专业经典书籍读书笔记

必看

  • 每天养成读书的习惯,按照我们之前的约定,一本数据要从厚到薄,在从薄到厚,所以一定要坚持
  • 我们这个仓库是记录自己的每天读书的过程,你的思考,对问题的解析,最好的原则是每个人不一样,因为每个人对知识的理解是不一样的
  • 我会提前准备好这本书的读后感,也就是我自己的感悟和觉得重要的点。我会直播来点睛,但是前提是你已经看了七七八八,这样你才有共鸣,否则你一脸懵逼

建议的文件夹内容

  • zhangsan
    • 《深入计算机系统第一章读后知识点总结.md》
    • 《对于计算机位移操作的总结.md》
      • 位移代码实践 XXX.c XXX.java
      • 遇到的问题.md
  • lisi
  • 《深入计算机系统第三章读后知识点总结.md》
    • 《对于计算机内存理论的总结.md》
      • 动态内存开辟代码实践 XXX.c XXX.java
      • 遇到的问题.md

补充:深入理解计算机系统学习指南\n 这本书真心推荐每一章都看一下,因为真的太经典了,它涵盖了很多的计算机基础理论的科目,所以要看一遍,就算你基础很差。下面的总结是相对的说法,相对能指点后续android的一些高级的基础的核心知识。

看书的重点章节预览

  • ===第一部分====

  • 第一章 通览

  • 第二章 整数和浮点数的表示

  • 第三章 通览

  • 第四章 通览 不做核心要求

  • 第五章 5.9/5.10/5.11 其他通览

  • 第六章 6.3-6.5 其他通览

  • ===第二部分====

  • 第七章 需要理解 后期会有直播

  • 第八章 8.1 是理解Google BreakPad的基础,掌握 8.2 需要理解 8.3-8.5 重点掌握

  • 第九章 9.1-9.3 概念理解 这是掌握Linux内核的基础,尤其是内存的部分 9.8-9.9掌握 9.10 通读 9.11 掌握 这是C语言经常的错误展示

  • ===第三部分====

  • 第10章 通读

  • 第11章 掌握 11.4小节 其他通读

  • 第12章 重点 全部掌握

学习的Tips

Tips学有余力的同学在看到第7章的时候,建议阅读《程序员的自我修养:链接、装载与库》重点了解程序的装载、 链接过程。另外CMU官网上提供了这套书对应的课程,网上也很多人说要去刷PDF,刷LAB,我已经提前看了, 基本上主流的一些LAB是下面的几个content。

Data Lab:bit 运算与float的相关操作

Bomb Lab:阅读汇编破解密码

Attack Lab:Buffer Overflow 攻击

Cache Lab:实现一个cache simulator已经一个cache efficient的矩阵转置。

Shell Lab:用多进程实现一个简单的linux shell。主要是熟悉进程控制与同步。

Malloc Lab:自己写一个C语言的malloc函数。

Proxy Lab:写一个支持HTML的多线程Server。熟悉Unix网络编程与多线程的控制与同步。

http://csapp.cs.cmu.edu/3e/labs.html 官方的LAB

http://www.cs.cmu.edu/~./213/schedule.html 官方的课程大纲

大家可以不用花时间去看了,有一些设计到驱动层面的代码,不要花费太多时间,后期总结我会给大家说的。

License

Copyright 2020 路哥 & jesson

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.