姬梦馨

原创微博

《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000

学习笔记

一:什么是冯诺依曼体系结构?
      就是指存储程序计算机。
     两个层面:1.从硬件的角度上来说:

2. 从程序员的角度来看:

二:.CPU识别什么样的指令?
API:程序员与计算机的接口。
应用程序编程接口
ABI :二进制接口,指令编码。
程序与CPU的接口。

三.32位的X86是由EIP指向内存的某条指令。
EIP 自加一,是假一条指令。不是一个字节等。
还可以被其他指令修改。

X86 Regsiters

1.CPU 在实际取指令时根据 cs:eip 来准确定位一个指令。
cs:代码段寄存器,其值为代码段的段值。
ss: 堆栈段寄存器,其值为堆栈段的段值。

2.标志寄存器
通用寄存器
3.X86_64 位寄存器
和32 位差别也不大。指核心机制上差别不大。
4.R指64位。

计算机的汇编指令
1.mov 指令。
b :8位. w :16位 I:32位 q :64位

 其他一些重要的指令

实验

 函数调用堆栈是理解C语言代码在CPU上执行的关键
汇编一个简单的C程序 

C程序及对应的汇编程序

所有以点开头的都是用于链接时候的一些辅助信息,不会在实际中被执行。 

自己对“计算机是如何工作的”理解:

对计算机是如何工作的有了更深刻的理解。了解到各种 各样的计算机寄存器,通过实验,反汇编。感觉计算机的工作很有意思。

计算机是依据冯诺依曼体存储结构,依据其核心思想——存储程序计算机工作模型,按程序编排的顺序,一步一步地取出指令,自动地完成指令规定的操作。

计算机中每个部件都有自己的分配,配合着进行工作。

《Linux内核 》MOOC 课程的更多相关文章

  1. Linux内核分析课程总结

    Linux内核分析课程总结 By 20135203齐岳 知识梳理 (思维导图地址http://mindmap.4ye.me/mkxM0cFh/1) 从start _ kernel构造一个新的Linux ...

  2. Linux内核分析课程期中总结

    Linux内核分析课程期中总结 姓名:王朝宪 学号:20135114 注: 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com ...

  3. Linux内核分析课程笔记(一)

    linux内核分析课程笔记(一) 冯诺依曼体系结构 冯诺依曼体系结构实际上就是存储程序计算机. 从两个层面来讲: 从硬件的角度来看,冯诺依曼体系结构逻辑上可以抽象成CPU和内存,通过总线相连.CPU上 ...

  4. linux内核分析 课程总结

    Linux内核分析 链接汇总 Linux内核分析第一周学习总结--计算机是如何工作的 Linux内核分析第二周学习总结--操作系统是如何工作的 Linux内核分析第三周学习总结--构造一个简单的Lin ...

  5. 【课程总结】Linux内核分析课程总结

    程涵  原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 每周实验报告: 反汇编一个简单的C程序 ...

  6. linux内核分析课程笔记(二)

    运行一个精简的操作系统内核 存储程序计算机是几乎所有计算机的基础逻辑框架. 堆栈是计算机中非常基础的东西,在最早计算机没有高级语言时,在高级语言出现之前,我们没有函数的概念.但高级语言出现后有了函数调 ...

  7. 分析Linux内核创建一个新进程的过程【转】

    转自:http://www.cnblogs.com/MarkWoo/p/4420588.html 前言说明 本篇为网易云课堂Linux内核分析课程的第六周作业,本次作业我们将具体来分析fork系统调用 ...

  8. 通过从代码层面分析Linux内核启动来探知操作系统的启动过程

    通过从代码层面分析Linux内核启动来探知操作系统的启动过程 前言说明 本篇为网易云课堂Linux内核分析课程的第三周作业,我将围绕Linux 3.18的内核中的start_kernel到init进程 ...

  9. 《Linux内核分析》 期中总结

    Linux内核分析 期中总结 20135307 张嘉琪 一.Linux内核分析课程总结 学习笔记汇总 第一节 计算机是如何工作的 第二节 操作系统是如何工作的 第三节 构造一个简单的Linux系统Me ...

  10. 通过分析exevc系统调用处理过程来理解Linux内核如何装载和启动一个可执行程序

    前言说明 本篇为网易云课堂Linux内核分析课程的第七周作业,本次作业我们将具体来分析exec*函数对应的系统调用处理过程,来分析Linux内核如何来执行一个可执行程序,由于有一个在网易云课堂共同学习 ...

随机推荐

  1. python第三十六课——2.迭代器对象

    满足前提: 1).必须是一个可迭代对象 2).可以被next()所作用的 举例: generator... 高效的检测一个对象是否是迭代器对象 需要使用collections模块中的Iterator类 ...

  2. Please select Android SDK解决办法

    项目不能运行,提示如下  打开项目local.properties文件,查看sdk地址是否正确,注意区分大小写  如果sdk地址正确,那么点击File-Sync Project with gradle ...

  3. Kubernetes1.91(K8s)安装部署过程(四)--Master节点安装

    再次明确下架构:  三台虚拟机 centos 7.4系统,docker为17版本,ip为10.10.90.105到107,其中105位master,接下来的master相关组件安装到此机器上. etc ...

  4. QGIS(2.18.15 源码)+Qt(5/5.9.3)+VS2015(X64)编译

    由于工作要求,今年需要基于Qt搞跨平台的GIS.前期未曾接触过Qt,最近也简单学习了下,开源的QGIS是非常不错的学习资源,下了最新版的QGIS源码,不过在VS2015下却没法直接打开.网上查了很多资 ...

  5. leetcode121—Best Time to Buy and Sell Stock

    Say you have an array for which the ith element is the price of a given stock on day i. If you were ...

  6. 第15章 RCC—使用HSE/HSI配置时钟

    第15章     RCC—使用HSE/HSI配置时钟 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku. ...

  7. 虚拟机和主机ping不通解决的方法

    虚拟机和主机ping不通 一般有3种方式:NAT.bridged .host-Only. Bridged方式: 在图1中Network connection中选中第1项,即在vm ware虚拟机属性里 ...

  8. [SDOI2011]工作安排 BZOJ2245

    分析: 费用流裸题,按照题面要求建边就可以了,语文题,我读了10多分钟才知道这题干啥...特别是注意一个细节a[j+1]-a[j]... 附上代码: #include <cstdio> # ...

  9. WPF编程,自定义鼠标形状的一种方法。

    原文:WPF编程,自定义鼠标形状的一种方法. 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/details/8727 ...

  10. 欧几里得算法(及扩展)&&快速幂(二分+位运算)

    最近在二中苦逼地上课,天天听数论(当然听不懂) 但是,简单的还是懂一点的 1.欧几里得算法 说得这么高级干什么,gcd入门一个月的人都会吧,还需要BB? 证明可参照其他博客(不会),主要就是gcd(a ...