- 博客(8)
- 收藏
- 关注

原创 深入浅出C++左值引用,右值引用,移动语义。
什么是左值 右值?简单来说左值就是可以取地址,在=左边的,而右值就是不可以取地址,在=右边的。int t=10;t可以通过&取地址在=左边 所以t是左值10不可以取地址 在=右边10是右值。class A{ A(int a){ a=10; } int a;}A a= A();a可以通过&取地址,在等号左边可以a是左值。A()不可以通过&取地址,在等号右边所以A()是右值。什么是左值引用?什么是右值引用?引用就是别名,同一变量的不同名字。通过引
2022-02-16 00:52:59
977
原创 APUE学习笔记第三章-文件IO
3.2 文件描述符对于内核,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。当打开一个现有或者创建一个新文件时,内核向进程返回一个文件描述符。当读写一个文件时,使用open或creat返回的文件描述符标识该文件,把他作为参数传递给read或write。UNIX系统shell吧文件描述符0与进程的标准输入关联,1与标准输出关联,2与标准错关联。文件描述符的范围0-OPEN_MAX-1。3.3 函数open和openatint open(const char*path,int oflag
2022-05-29 20:55:18
157
原创 操作系统:文件系统
文件系统导读我们可以先把文件系统当作一个可以读写的线性序列。读块k写块k实际上磁盘系统支持更多的操作。现在提出一些问题?如何找到信息?如何防止一个用户读取另一个用户的数据?如何知道那些块是空闲的?通过简历一个新的抽象–文件。什么是文件? 文件是进程创建的信息逻辑单元。 文件是对磁盘的建模。操作系统中处理文件的部分称为文件系统。4.1文件4.1.1文件命名略4.1.2 文件结构4.1.3 文件类型普通文件和目录文件 unix还有字符特殊文件 块特殊文件字符特殊文件
2022-03-23 19:58:51
990
原创 操作系统:精髓与设计原理第三章
3进程描述和控制3.1 进程3.1.1 什么是进程什么是进程?3.1.2 进程和进程控制块进程?进程控制块?3.2 进程状态3.2.1 两状态进程模型3.2.2 进程的创建和终止什么时候会创建进程?创建进程时操作系统做了什么?什么时候终止进程?终止进程操作系统做了什么?3.2.3五状态模型有哪五种状态?3.2.4被挂起的进程为什么需要被挂起?什么时候被挂起?3.3进程描述3.3.1操作系统的控制结构操作系统如何管理进程和资源?3.3.2 进程控制结构进程控制块
2022-03-21 23:15:02
593
原创 操作系统:精髓与设计原理第二章
2.1操作系统的目标和功能操作系统是控制应用程序执行的程序,是应用程序和计算机硬件间的接口。它有三个目标:方便:操作系统人使计算机更易于使用有效:操作系统允许以更有效的方式使用计算机系统资源扩展能力:在构造操作系统时,应允许在不妨碍服务的前提下,有效地开发,测试,引入新的系统功能2.1.1 作为用户/计算机接口的操作系统操作系统提供了一下几个服务:程序开发程序允许IO设备访问文件访问控制系统访问错误检测和响应记账:收集各种资源的率的数据典型计算机系统的三种重要接口:
2022-03-21 16:33:53
642
原创 深入浅出C++函数调用过程(x86)
什么是栈空间栈可以理解为一个临时空间。我们为了执行当前所在的函数,需要一些临时空间为了计算。我们知道函数内声明的变量的生命周期也就是这个函数的声明周期。所以每当执行到一个函数都需要有一个独立的栈空间以便计算。寄存器PC是CPU中用于存放下一条指令地址的寄存器(不是当前执行的指令地址而且下一条指令)。sp为堆顶指针bp栈底指针先跳过这个图。我们从一个sum函数入手先看一个过程内的sumint main(){ int a=1; int b=2; int c=a+b;}main
2022-02-16 23:21:09
653
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人