
linux
文章平均质量分 92
网友张无忌
这个作者很懒,什么都没留下…
展开
-
Linux.14_多线程(重点总结)
线程是一个进程内部的控制序列,通俗的说:在一个程序里的一个执行路线就叫做线程(thread)。一个进程至少有一个执行线程线程在进程内部运行,本质是在进程地址空间内运行。在Linux系统CPU眼中,看到的PCB都要比传统进程更加轻量化。透过进程虚拟地址空间,可以看到进程的大部分资源,将进程资源合理分配给每个执行流,就形成了线程执行流。原创 2022-11-02 09:07:39 · 119 阅读 · 1 评论 -
一文详解计算机网络
计算机网络原创 2021-08-01 16:44:48 · 1760 阅读 · 0 评论 -
Linux.13_进程信号(重点总结)
Linux.13_进程信号(重点总结)一、基本概念生活角度中午11点了,你给自己和女朋友在网上点了两份外卖,你吃米饭,她吃面条。虽然外卖没有到来,但你清楚的知道外卖来临时,你该怎么处理。也就是你能“识别外卖”。当外卖小哥到了你楼下,你也收到通知,但是你正在优快云学习,需3min之后才能去取外卖。那么在这3min之内,你并没有下去去取外卖,但是你是知道有外卖到了。也就是取外卖的行为并不一定要立即执行,可以看做“在合适的时候去取”。在接到电话,再到你拿到外卖期间,有一个时间窗口。在这段时间你并没有拿原创 2021-06-03 14:15:55 · 386 阅读 · 1 评论 -
Linux.12_进程间通信
Linux.12_进程间通信文章目录Linux.12_进程间通信进程通信的目的一、管道管道的工作原理总结进程通信的目的数据传输:一个进程需要将它的数据发送给另一个进程资源共享:多个进程之间共享同样的资源。通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程)。进程控制:有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有陷入和异常,并能够及时知道它的状态改变。一、管道管道的工作原理原创 2021-06-01 17:37:53 · 250 阅读 · 1 评论 -
Linux.11_动静态库
Linux.11_动静态库一、inodeinode是一个数据结构,本质是结构体,用来存放文件的许多信息。原创 2021-05-25 16:55:55 · 124 阅读 · 1 评论 -
Linux.10_基础IO ——深度解析Linux 一切皆文件
Linux.10_基础IO原创 2021-05-14 10:27:55 · 241 阅读 · 1 评论 -
Makefile常见问题(持续更新)
同时make多个文件原创 2021-05-11 20:14:19 · 181 阅读 · 1 评论 -
有了女朋友你就一定理解的:进程阻塞与非阻塞等待方式
进程阻塞与非阻塞等待方式你是一个程序员,你有个非常漂亮的女朋友,你们相约一起吃饭(必须一起吃)。今天,由于你一贯磨磨唧唧,她先来到你的楼下,开始发消息:她:你快点下来吧,我们去吃饭你:稍等,5分钟她:行五分钟很快过去了她:你快点下来吧,这都5分钟了你:稍等哦,再给我3分钟她:嗯 你快点三分钟又过去了她:你好了没呀?你:等等 再给我2分钟她:把记忆结成冰?????这个时候,女朋友肯定生气了,于是一个电话打过来:她:你不许挂电话,我就在这等着,什么时候下来,什么时候我挂。原创 2021-05-10 20:22:08 · 367 阅读 · 3 评论 -
Linux.9_进程控制
Linux.9_进程控制目录Linux.9_进程控制一、fork函数初识1.调用fork2.进程调用fork3.fork特点2、写时拷贝1.引入:2.父子进程的映射3. 只读4.本质映射关系修改一、fork函数初识概念:从已存在进程中创建一个新进程。新进程为子进程,而原进程为父进程。在linux中fork非常重要。fork函数的返回值:子进程默认返回0,父进程返回子进程的pid。1.调用fork调用过程如图所示:befor、after指调用fork前后;2.进程调用fork当控制转原创 2021-05-09 22:32:49 · 529 阅读 · 1 评论 -
僵尸进程 孤儿进程 僵尸进程危害
僵尸进程概念Z-僵死状态(Zombies)是一个比较特殊的状态。当进程退出并且父进程(使用wait()系统调用)没有读取到子进程退出的返回代码时就会产生僵死(尸)进程。僵死进程会以终止状态保持在进程表中,并且会一直在等待父进程读取退出状态代码。只要子进程退出,父进程还在运行,但父进程没有读取子进程状态,子进程进入Z状态。创建一个僵尸进程:原创 2021-04-14 10:09:09 · 177 阅读 · 0 评论 -
孤儿进程实现
孤儿进程概念当父进程先子进程一步退出,进入Z状态僵尸进程,此时子进程被称作孤儿进程。孤儿进程被1号init进程领养,由init进程回收。此时的init进程可以看做操作系统(感觉这句说的不好,欢迎批评指正)孤儿进程实现创建一个孤儿进程:同样运行监控脚本:由于进程较多,最下面的两行才是当前进程。运行当前进程:此时,父子进程同时在运行5秒过后:此时,父进程结束,子进程变成孤儿进程进程无法终止时,输入指令终止:kill -9 序号...原创 2021-04-14 10:15:40 · 173 阅读 · 0 评论 -
vim常见快捷键
vim 是一个功能强大的文本编辑器,通常被认为是 Unix 和 Linux 系统上 vi 编辑器的增强版本。vim 提供了许多高级特性和用户自定义选项,使得它非常适合编写和编辑代码,尤其是程序员和文本处理专家。原创 2021-04-15 16:46:54 · 588 阅读 · 1 评论 -
Linux.8_进程优先级&&环境变量
目录一、进程优先级基本概念查看系统进程PRI和NIPRI VS NI查看进程优先级的命令:其他二、环境变量基本概念常见环境变量查看环境变量和环境变量相关的命令总结一、进程优先级基本概念cpu资源分配的先后顺序,就是指进程的优先权(priority)。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。查看系统进程在Linux、unix系统中,输原创 2021-04-15 15:27:43 · 448 阅读 · 1 评论 -
Linux.7_进程概念
目录冯诺依曼系统一、操作系统概念与定位二、深入理解进程,了解PCB三、学习进程状态总结冯诺依曼系统目前,在我们认知中的计算机,都是由硬件组成:输入单元:包括键盘, 鼠标,扫描仪, 写板等中央处理器(CPU):含有运算器和控制器等输出单元:显示器,打印机等强调几点:存储器指内存不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)外设要输入或者输出数据,只能写入内存或者从内存中读取。所有设备都只能直接和内存打交道。对冯诺依曼的理解,不能停留在概原创 2021-04-14 10:17:41 · 115 阅读 · 1 评论 -
Linux.6_git克隆和上传
git克隆和上传默认都是会使用GItHub的,并创建好代码仓库了。没有git的使用命令:yum install git进行安装目录git克隆和上传一、克隆代码仓库1.复制链接2.下载项目到本地二、上传1.git add2.git commit3.git push一、克隆代码仓库1.复制链接在新建仓库后,点击下载界面,复制如下链接:后面下载会用到这个地址。2.下载项目到本地创建好一个放置代码的目录,输入命令:git clone name此时的name就是刚才复制的地址。原创 2021-04-09 23:47:28 · 393 阅读 · 1 评论 -
Linux.5_Linux调试器 gdb使用
目录进入调试一、常见指令二、错误进入调试发布程序hello通过gdb进入调试:gdb hello一、常见指令查看代码: l 或 listl后可以跟行号:运行程序:r 或 runrun之后,程序就运行起来了进入函数:s逐过程:n,第一次n输入完后,仅需回车就可以继续进行逐过程操作:断点:b查看变量内容p但此时,每次查看rt都要输入命令,太麻烦了,因此引入:常显示:display(跟踪查看一个变量,每次停下来都显示它的值)取消原创 2021-04-07 10:22:47 · 123 阅读 · 1 评论 -
Linux centos7 常见报错(持续更新)
error: ‘for’ loop initial declarations are only allowed in C99 mode for(int i =0;i<=top;++i) ^hello.c:5:3: note: use option -std=c99 or -std=gnu99 to compile your code解决方案:按照提示给后面加入**-std=c99** 或 -std=gnu99编译通过...原创 2021-04-05 21:53:51 · 675 阅读 · 1 评论 -
Linux.3_gcc&&g++编译
Xshell是一款功能强大的安全终端模拟软件,主要用于远程访问和管理服务器。以下是关于Xshell的详细介绍:软件概述:Xshell支持SSH1、SSH2以及Microsoft Windows平台的TELNET协议,通过互联网到远程主机的安全连接,帮助用户在复杂的网络环境中高效工作。Xshell可以在Windows界面下访问远端不同系统下的服务器,实现远程控制终端的目的。主要特点:多种协议支持:Xshell支持SSH、Telnet、SFTP等多种协议,能够连接各种类型的服务器和网络设备。原创 2021-04-02 23:44:40 · 209 阅读 · 1 评论 -
Linux.4_Centos7 Vim配置(闭眼配置)
Linux.4_Vim配置常见配置目录Linux.4_Vim配置查看vim简单配置推荐配置*总结查看vim一般在租的云服务器上,默认有安装vim,可以使用命令查看是否安装:rpm -qa|grep vim如果没有,输入以下命令安装:yum -y install vim*简单配置配置vim,需要在**.vimrc**里配置,没有就输入命令:touch .vimrc通过命令:vim .vimrc进入 .vimrc 文件,常见配置有:set nu // 设显原创 2021-04-02 10:15:04 · 192 阅读 · 1 评论 -
Linux.2_权限管理&&开发工具
Linux权限管理Linux权限的概念一、权限是什么?二、使用步骤1.引入库2.读入数据总结Linux权限的概念Linux下有两种用户:超级用户(root)、普通用户。超级用户:可以再linux系统下做任何事情,不受限制普通用户:在linux下做有限的事情。超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。命令:su [用户名]功能:切换用户。例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 su root(.原创 2021-03-22 22:50:07 · 168 阅读 · 1 评论 -
Linux 添加sudo权限
有时候,linux下面运行sudo命令,会提示: xxxxxx 是用户名。进入超级用户模式。也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。(当然,你也可以直接用root用)添加文件的写权限。也就是输入命令"chmod u+w /etc/sudoers"。编辑/etc/sudoers文件。也就是输入命令"vim /etc/sudoers",进入编辑模式,找到这一 行:“root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL”(原创 2021-03-02 10:14:17 · 225 阅读 · 1 评论 -
Xshell创建新用户(非root)
创建普通用户:由于每个用户需求不同,环境需求也不同,避免环境错乱,所以必须创建多个用户,分开使用。创建用户名(账号&ID):useradd name:设置密码:出现如下图代表成功 添加新用户:如图所示:再点击左侧用户身份验证,填写刚才申请的用户名和密码即可。...原创 2021-02-01 12:41:02 · 6173 阅读 · 0 评论 -
Linux.1_常见指令
常见指令:pwd 显示用户当前所在的目录。ls 对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。cd 改变工作目录。将当前工作目录改变到指定的目录下#绝对路径不会失效,相对路径容易失效#基本上,所有的操作系统文件管理,都采用的是树状结构touch 常用来创建普通文件指令:touch test.c 创建一个test.c文件mkdir(重要) 在当前目录下创建一个名为 “name”的目录指令:mkdir namermdir&&rm(重要原创 2021-01-21 17:42:21 · 158 阅读 · 1 评论 -
Xshell连接云服务器
以手头有的一台腾讯云服务器举例子。首先准备软件硬件:腾讯云云服务器。打开Xshell。Xshell下载点击【文件】→【新建】输入云服务器的公网ip地址,点击【确定】(公网IP,用户名和密码,腾讯云后台给发的站内信中可以找到)点击连接输入登陆用户名,默认root。输入密码。到这一步代表连接成功。...原创 2021-01-21 13:17:08 · 598 阅读 · 1 评论 -
Xshell下载
简单介绍下载要注意的问题官网下载地址在点击 DOWNLOAD,选择Free for Home/School(免费)在此处填写真实的姓名、邮箱即可,选择你所需求的功能,我只用Xshell,选择第二项。此时你的邮箱会收到下载链接,点击下载即可。安装没有特别需要注意的地方。...原创 2021-01-21 12:04:00 · 387 阅读 · 0 评论