自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 数据结构------栈和队列

一、栈 栈:是一种先进后出的数据结构,是一种特殊的线性表(插入和删除操作只能在一端进行) 通常有顺序栈、链式栈 两种存储结构 顺序栈存在“上溢”“下溢”两种概念,“上溢”是指栈已满但仍向栈中添加元素(链栈不存在上溢),“下溢”是指栈为空仍取栈中元素 1.栈的顺序实现

2017-11-30 21:47:21 302

原创 Linux操作系统分析------期末总结、感谢老师、祝我们越来越好

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、博客目录: 1、第一周学习总结:计算机是如何工作的? 2、第二周学习总结:操作系统是如何工作的? 3、第三周学习总结:构造一个简单的Linux系统MensOS 4、第四周学习总结:扒开系统调用的三层皮(上) 5、第五周学

2017-04-19 23:27:33 1655

原创 Linux------进程的切换和系统的一般执行过程

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、基础知识 (1)进程切换的关键代码分析 1.调度策略 调度策略是一组规则,它们决定什么时候以怎样的方式选择一个新进程运行,无论何种策略,都是从运行队列中选出一个进程作为next来执行,Linux内核中的调度算法相关代码使用

2017-04-15 00:17:28 584

原创 Effective C++------读书笔记

(一)让自己习惯C++ (1)条款01:视C++为联邦语言 C++的组成可分为四部分: 1.C:C++仍然以C语言为基础。区块、语句、预处理、内置数据类型、数组、指针等都来自C。 2.Object-Oriented C++:C with Classes所诉说的:classes(包括构造和析构)、封装、继承、多态、virtual动态绑定等 3.Template C++:泛型编程 4.STL

2017-04-06 22:47:48 360

原创 Linux------可执行程序的装载

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、基础知识 (1)可执行程序是怎么来的? 一个.c文件经过编译器预处理(.cpp), 然后编译成汇编代码(.S/.asm), 由汇编器生成目标代码(.o二进制), 由链接器链接成可执行文件, 最后由操作系统加载到内存中然后执行

2017-04-04 23:19:24 712

原创 Linux的进程------进程的描述和进程的创建

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、基础知识 (1)操作系统的三个重要功能:进程管理、文件管理、内存管理 (2)为了管理进程,内核必须对每个进程进行清晰的描述,进程控制块PCB就完成了对进行描述的功能,进程控制块PCB——对应的task_struct(进程描述符)结构

2017-03-26 23:27:24 614

原创 Linux系统调用------追踪系统调用的执行过程

一、基础知识 关于系统调用 系统调用号:内核为每个系统调用定义了一个唯一的编号,这个编号定义在…/include/asm/unisd.h中(最大为NR_syscall) 系统调用表:同时在内核中保存了一张记录系统调用号和其对应服务例程的表,与系统调用表一一对应 在系统调用陷入内核之前,需要把系统调用号一起传入内核,这个标号就是系统调用表的sys_call _ table 下标,这个传递的动作

2017-03-14 20:30:46 1820

原创 Linux系统调用------通过time系统调用理解系统调用的执行过程

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、重点知识 (1)用户栈与内核栈 内核栈:存在于内核空间,当进程在内核栈里运行时,CPU栈顶指针寄存器里面的内容是内核栈空间地址,使用内核栈。 用户栈:存在于用户空间,当进程在用户栈里运行时,CPU栈顶指针寄存器里面的内容是用户栈空

2017-03-06 14:43:48 2475

原创 Linux内核分析------跟踪分析Linux内核的启动过程

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 一、基础知识 (1)Linux内核中常用的目录 1.arch/:与体系结构相关的代码,(内容庞大,支持不同cpu的源代码)。 2.Documentation/:文档文件 3.fs/:file system 文件系统 4.dri

2017-02-28 14:59:18 687

原创 软件工程基本知识

(1)什么是软件工程: 软件工程是指通过工程化的概念、概念和方法来开发和维护软件。把经过时间考验证明正确的管理技术与当前最新的技术方法相结合。 (2)软件工程的原则: 抽象、信息隐藏、模块化、局部化、一致性、完整性、可验证性 (3)软件工程的四大模型: 1.瀑布模型:各项活动完全按照线性的方式进行,当前的活动接受上一个活动的工作结果,实施完成所需的工作内容,强档文档的重要性,并要求每个阶段

2017-02-28 12:23:49 770

原创 操作系统是如何工作的-------通过一个简单的时间片轮转多道程序内核代码分析

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、理论知识 1.计算机是如何工作的?——总结关键的三点 (1)存储计算机模型——计算机系统中最最基础的数据结构 (2)函数调用堆栈——高级语言得以运行的基础 堆栈完成了计算机的基本功能:函数的参数传递机制和局部变量存取 (3)

2017-02-21 19:12:42 1626

原创 Linux学习篇------认识与学习bash

一、硬件、内核与shell (1)什么是shell:通过shell(就是命令行模式)来操作应用程序,让这些应用程序调用内核来运行所需要的工作——只要能操作应用程序的接口都能成为shell (2)什么叫bash:Linux使用的shell版本成为”Bourne Again SHell”简称bash,是基于GNU架构发展出来的 (3)bash的好处: 1.命令记忆功能(history):能够记忆

2017-02-19 18:34:24 430

原创 Linux学习篇------vim程序编辑器

一、基本上vi分为三种模式一般模式(默认)、编辑模式(会有insert/replace在最下面一行,必须按ESC才能退出编辑模式)、命令行模式(在一般模式下输入:、/、?时会出现)二、常见的按键说明(此处仅说明了最常用的按键与命令)1.一般模式可用的按钮说明。光标移动、复制粘贴、查找替换等 光标移动 (1)屏幕向下移动一页:ctrl+f (2)屏幕向上移动一页:ctrl+b (3)向下移动3

2017-02-18 18:18:40 394

原创 Linux学习篇------gcc编译及Makefile基本知识

1.编写一个主程序,在主程序中调用某个子程序thank.c#include <stdio.h>int main(void){ printf("Hello World\n"); thank2();}thank2.c#include <stdio.h>void thank2(void){ printf("Thank you\n");}如何将两个程序连接到一起,

2017-02-18 11:33:56 582

原创 基本数据结构--表、栈和队列

栈(1)栈(后进先出)的两种实现方式:指针和表 用指针方式实现栈的基本操作: createStack(void)//.h文件#ifndef _Stack_h_struct Node{ ElementType Element; PtrToNode next;//节点类型的指针};struct Node;typedef struct Node* PtrToNode;ty

2017-02-17 21:51:36 648

原创 计算机是如何工作的?--通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的

王雪 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000一、理论基础 (1)冯诺依曼体系结构:存储程序计算机的工作模型 从硬件角度看程序的执行过程:其中IP(instruction pointer)为CPU中的寄存器,指向内存中的某一块,CPU执行指令时,会从IP中取出一条指令后执行,

2017-02-16 21:59:45 3118

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除