![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LINUX系统及网络
文章平均质量分 73
qx LIU 2000
这个作者很懒,什么都没留下…
展开
-
Linux操作系统--基础IO
Linux--基础IO]C文件 IO 相关操作系统调用接口文件描述符 fd重定向C文件 IO 相关操作有关c语言的IO函数fopen、fread、fwrite、f等等我们先来看一个简单的例子:打开一个文件fopen函数的两个参数,第一个参数为文件路径,如果我们不加路径,只写文件名则指当前路径 —cwd什么是当前路径呢?本质是进程运行时所处的路径我们可以通过命令的形式看一看进程究竟在什么路径下我们知道除了 axj aux 这样的查看进程命令,还可以通过proc文件夹 来查看进程我们可原创 2021-10-11 12:39:40 · 1238 阅读 · 0 评论 -
Linux 操作系统 --简易版shell实现
ww原创 2021-09-30 12:02:25 · 175 阅读 · 0 评论 -
Makefile文件管理高阶
此前,我们使用Makefile作为单个可执行程序的批量管理,我们可以用多个源文件,生成多个.o文件 。但只能生成一个可执行文件,如果我们写两个可执行文件,就会发生问题,无论如何我们只能生成第一个可执行文件,如果需要生成第二个可执行文件,我们需要进行指定,这显然是不智能的。所以我们有了以下解决方案我们可以再生成一个伪目标,这个伪目标 all 的依赖关系就是我们想要的两个可执行文件,并没有依赖方法,由于我们得知makefile项目工具只会识别第一个命令,所以此时第一个命令的执行,需要该两个可执行,就会向下原创 2021-09-29 20:44:42 · 135 阅读 · 0 评论 -
Linux操作系统 --进程控制
进程控制进程创建fork函数写时拷贝进程终止进程创建fork函数有关fork的基础细节,可移步至https://blog.csdn.net/Iiverson2000/article/details/119394135进行学习我们在此问一个问题,为什么要给子进程返回0,给父进程返回子进程的PID呢?它是如何做到同时返回两个返回值呢?我们首先需要了解:父子关系永远是 1:n也就是说 在父子进程立场,父进程只有一个,不需要进行标识,所以返回0. 而 子进程很多,需要进行标识,所以给父进程返原创 2021-09-24 14:12:53 · 214 阅读 · 0 评论 -
Linux 操作系统--虚拟地址
前文可在专栏寻找进程基础https://blog.csdn.net/Iiverson2000/article/details/119394135二谈虚拟地址虚拟地址究竟是什么?举个例子:一个课桌,我需要画三八线,那么就需要对桌子进程刻度分化,比如 0-50 和50-100 分别为各自的地盘。而此时 这里的 0 - 100 刻度 就是 我们所谓的虚拟地址,而真正的物理地址就是指桌子这个客观大小进程地址空间本质:内存中的一种内核数据结构 : mm_struct我们知道在32位系统.原创 2021-09-24 13:44:58 · 403 阅读 · 0 评论 -
进度条小程序
说明:基于gcc、gdb、make和makefile、vim所写的linuxc语言小程序–进度条源代码:https://gitee.com/Aiverliu/linux-code/tree/master/lesson7对于代码做一些解释说明:先引入一个小程序当我们不加\n的时候,我们发现,屏幕上并不会打印出我们想要的内容,这是因为,显示器有一种缓存规则,并不是立即刷新出来,我们的字符会先存到缓冲区中。如果加上\n字符会直接刷新出来。缓冲区分为三种:无缓冲、全缓冲、行缓冲其中我们的显示器采用.原创 2021-08-04 23:36:54 · 220 阅读 · 0 评论 -
Linux操作系统基础 --进程宝典
操作系统初探认识冯诺依曼体系结构数据是如何读取到内存中的?操作系统(OS)的概念认识冯诺依曼体系结构冯诺依曼的的体系结构:冯诺依曼体系结构是由5部分组成的:输入设备、输出设备、内存、运算器、控制器其中运算器主要的功能是:算术运算、逻辑运算运算器和控制器一般就集成在我们的CPU当中。输入设备:键盘、网卡、硬盘、话筒、摄像头输出设备:显示器、音响、网卡、硬盘理解:硬件角度上、数据层面上,cpu只和内存交互。输入设备无法直接联系到cpu计算,cpu无法直接给显示器输出运算结果为什么?因为cp原创 2021-08-04 23:22:40 · 653 阅读 · 1 评论 -
Linux手册--开发环境及工具
linux开发环境及工具yum--linux软件包管理器我们之前了解了linux的基础操作和基本的概念,还是无法在linux中完成一些开发工作的,接下来我为大家介绍我们常用的开发工具。yum–linux软件包管理器我们如何下载软件呢?下载程序的源代码,自己编译,从而得到可执行程序但是这样很麻烦呀,所以我们直接下载编译好的软件包。一般通过软件包管理器进行获取软件包,直接进行安装。linux中我们可以下载rpm安装包,但是没有人为我们解决依赖关系的问题依赖关系是指程序的运行依赖操作原创 2021-07-28 21:38:06 · 719 阅读 · 0 评论 -
Linux手册--shell和权限
Linux中的Shell和权限shell命令以及运行原理shell命令以及运行原理linux严格意义上是一个操作系统,我们称之为核心(kernel),但我们普通用户不直接使用kernel,而是通过kernel 的外壳程序进行交互,也就是所谓的shell。shell最简单的定义:命令行解释器将使用者的命令翻译给kernel处理将核心的处理结果翻译给使用者那我们为什么不直接使用kernel呢?我们可以类比windows GUI ,我们通常通过图形接口点击,完成我们的操作。而不去操作window原创 2021-07-27 02:55:57 · 304 阅读 · 0 评论 -
Linux手册---基本了解基本指令(1)
Linux初识环境Linux背景发展史环境作为程序员的我们,当我们拥有一台云服务器的时候,Linux背景发展史UNIX (1970)汇编 -》c-》unix(c编写的) 为了赚钱芬兰的大学生为了有免费的操作系统 -》》1991 仿造unix -》》10000多行,开源 linux ,托瓦兹unix(实验室,大型机器)发展的同时期,mac os和windows(普通用户)都在发展 ,他们两个公司很大,且有很多竞争对手,所以这些工程师黑客都加入linux社区,免费原创 2021-07-27 02:25:30 · 217 阅读 · 0 评论