Linux内核分析 期末总结

一、知识概要

1. 计算机是如何工作的

  • 存储程序计算机工作模型:冯诺依曼体系结构
  • X86汇编基础
  • 会变一个简单的C程序分析其汇编指令执行过程

2. 操作系统是如何工作的

  • 函数调用堆栈
  • 模拟存储程序计算机工作模型和时钟中断
  • 在mykernel基础构建一个简单的操作系统

3.构造一个简单的Linux系统

  • Linux内核源代码
  • 构造一个简单的Linux系统
  • 跟踪调试Linux内核的启动过程

4. 系统调用

  • 用户态、内核态和中断
  • 系统调用概述
  • 使用库函数API和C代码中嵌入汇编代码触发同一个系统调用
  • 给MenuOS增加time和time-asm命令
  • 用gdb跟踪系统调用内核函数sys_time
  • 系统调用在内核代码中的处理过程

5. 进程的描述和进程的创建

  • 进程的描述
  • 进程的创建

6. 可执行程序的装载

  • 预处理、编译、链接和目标 文件的格式
  • 可执行程序、共享库和动态链接
  • 可执行程序的装载

7. 进程的切换和系统的一般执行过程

  • 进程切换的关键代码switch_to的分析
  • Linux系统的一般执行过程
  • Linux系统架构和执行过程概览

二、每周总结和实验

总结:

这次mooc的学习时间不长,但是却涵盖了许多内容,加上每周的实验,博客总结,读书笔记,总体来说是相当的充实。在对Linux内核的学习中,我对Linux系统又有了新的认识,也产生了许多问题。正因如此,我才发现linux真的不是很容易学,它的整个运作机制几乎包含了我们目前所学的有关计算机的所有原理,如果要真正融会贯通可能真的不是这几次网课和课堂上的一本书能够解决的。还需要我们更加深入的理解和学习它,最重要的还是一颗好学的心。在学习中我最大的收获就是能自主的的学习,最大的遗憾也是没有能达到自己想要的结果,过程是美好的,结果是残酷的,也许这也是一种收获吧!

Linux内核分析 期末总结的更多相关文章

  1. LINUX内核分析期末总结

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.课程总结 1 ...

  2. Linux内核分析——期末总结

    Linux内核学习总结 首先非常感谢网易云课堂这个平台,让我能够在课下学习,课上加强,体会翻转课堂的乐趣.孟宁老师的课程循序渐进,虽然偶尔我学习地不是很透彻,但能够在后续的课程中进一步巩固学习,更加深 ...

  3. 网易云课堂-----Linux内核分析-----期末主观题

    姚歌 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 下面是对8个课题的 ...

  4. 《Linux内核分析》期末总结

    Linux内核设计期中总结 版权声明:本文为博主原创文章,未经博主允许不得转载. 前八周博客汇总及总结 Linux内核设计第一周——从汇编语言出发理解计算机工作原理 我们学习了汇编语言的基础知识,这一 ...

  5. 期末总结:LINUX内核分析与设计期末总结

    朱国庆原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一,心得体会 关于网上听课这 ...

  6. 《Linux内核分析》期末总结及学习心得

    [洪韶武 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ] 一.学习心得 本学 ...

  7. 期末总结20135320赵瀚青LINUX内核分析与设计期末总结

    赵瀚青原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 对LINUX内核分析与设计这 ...

  8. linux内核分析作业8:理解进程调度时机跟踪分析进程调度与进程切换的过程

    1. 实验目的 选择一个系统调用(13号系统调用time除外),系统调用列表,使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 分析汇编代码调用系统调用的工作过程,特别是参数的传递的方 ...

  9. Linux内核分析作业7:Linux内核如何装载和启动一个可执行程序

            1.可执行文件的格式 在 Linux 平台下主要有以下三种可执行文件格式: 1.a.out(assembler and link editor output 汇编器和链接编辑器的输出) ...

随机推荐

  1. IO流_演示键盘录入

    读取一个键盘录入的数据,打印到控制台上 键盘本身就是一个标准的输入设备,对于java而言,对于这种输入设备都有相应的对象在System类中 import java.io.IOException; im ...

  2. LCA转换成RMQ

    LCA(Lowest Common Ancestor 最近公共祖先)定义如下:在一棵树中两个节点的LCA为这两个节点所有的公共祖先中深度最大的节点. 比如这棵树 结点5和6的LCA是2,12和7的LC ...

  3. 1095 Anigram单词

      基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 一个单词a如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的Anigram,例如单词 ...

  4. vs2012中如何显示代码行号

    打开一个项目,里面没有显示行号   打开工具-选项   选择文本编辑器-C#   在行号前面上打钩   点击确定,就可以看到代码前面显示出行号 6 还可以按此办法添加其他类型文件的代码行号

  5. Git安装与配置——详细教程1

    1.下载Git客户端 想要安装Git首先要下载Git的安装包程序. Git安装包下载地址:https://git-scm.com/downloads/ 2.安装Git 双击安装程序进行安装: a. 欢 ...

  6. 用户输入序号选择商品,按q退出

    输出商品列表,用户输入序号,显示用户选中的商品 li = ['手机','电脑','鼠标垫','游艇'] while 1: li = ['手机','电脑','鼠标垫','游艇'] for i in li ...

  7. blinker语音控制Arduino/esp8266开关灯-滑动条使用-文本框交互

    总链接:  https://www.arduino.cn/thread-78393-1-1.html 语音控制:https://doc.blinker.app/?file=005-App%E4%BD% ...

  8. Arduino IDE for ESP8266 (0) 官方API

    http://arduino-esp8266.readthedocs.io/en/latest/esp8266wifi/readme.html 0 简单的连接到WIFI #include <ES ...

  9. mybatis基础系列(一)——mybatis入门

    好久不发博客了,写博文的一个好处是能让心静下来,整理下之前学习过的一些知识一起分享,大神路过~ mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射. ...

  10. WordPress研究心得

    WordPress,当初之所以研究这个,目的是在于开发一个多租户系统应用.总的来说,WordPress给了我不少启发和影响.为此,我决定这个研究心得分享出去. 总的来说,这篇文章参考了很多朋友们的博客 ...