首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux系统编程Linux 软件包管理器——yum

这篇文章我们要学习是—— Linux 软件包管理器 yum。 1....那同样: 在Linux上,也需要有一个类似于应用商店东西,在对应服务器端去帮助我们下载和安装Linux需要一些软件。...那在Linux上,这个类似于应用商店东西就是我们接下来要学习yum——Linux 软件包管理器。...在Linux上提供软件的人群有不同动机,包括推动开源精神、贡献社区、满足用户需求、商业利益等。他们努力为Linux用户提供了丰富选择,并促进了Linux生态系统发展和壮大。...安装好我们就可以用了: 当然安装时候如果你知道后缀也可以把后缀带上: 注意事项: 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.

14510

Linux编程系统僵尸们)

下图给出Linux进程从被创建(生)到被回收(死)全部状态,以及这些状态发生转换时条件: ?...3,刚被创建进程都处于“就绪”状态,等待系统调度,内核中函数sched( )被称为调度器,他会根据各种参数来选择一个等待进程去占用CPU。...进程占用CPU之后就可以真正运行了,运行时间有个限定,比如20毫秒,这段时间被称为time slice,即“时间片”概念。时间片耗光情况下如果进程还没有结束,那么会被系统重新放入等待队列中等待。...当进程所等待资源变得可获取时,又会被系统置为TASK_RUNNING状态重新就绪排队。...5,当进程收到SIGSTOP或者SIGTSTP中其中一个信号时,状态会被置为TASK_STOPPED,此时被称为“暂停态”,该状态下进程不再参与调度,但系统资源不释放,直到收到SIGCONT信号后被重新置为就绪态

1.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

linux系统编程(3)

[3]信号 (2)System 5 IPC对象进程间通信方式   [1]消息队列   [2]共享内存   [3]信号灯集 (3)socket通信 (4)Android系统中增加...Binder进程间通信方式 Linux 支持以上所有进程间通信方式 三 管道进程间通信 (1)无名管道 特点: 只能用于具有亲缘关系进程间通信(具有亲缘关系进程具有数据拷贝动作...返回值: 成功返回0,失败返回-1 (2)管道读写规则  读端存在  ,写管道 ---->只要管道没有满,都可以写入数据到管道 读端不存在,写管道 ---->此时写管道没有意义,操作系统会发送...,返回值0 (3)有名管道 特点:可以用于任意进程间通信,它是一种特殊文件,在文件系统存在名字,      而文件中存放数据是在内核空间,而不是在磁盘上 1.创建一个有名管道文件...  子进程状态发生改变时候,操作系统向父进程发送SIGCHLD,默认对它处理方式是忽略 typedef  void (*sighandler_t)(int); sighandler_t signal

1K20

Linux系统进程编程(二)

哈哈哈,听到僵尸两个字是不是有点小害怕,言归正传,在Linux系统中,我们要明白:进程在运行时是需要消耗系统资源(内存、IO),进程终止时理应完全释放这些资源(如果进程消亡后仍然没有释放相应资源则这些资源就丢失了...),所以linux系统设计时规定:每一个进程退出时,操作系统会自动回收这个进程涉及到所有的资源(譬如malloc申请内容没有free时,当前进程结束时这个内存会被释放,譬如open打开文件没有close...但是操作系统只是回收了这个进程工作时消耗内存和IO,而并没有回收这个进程本身占用内存(8KB,主要是task_struct和栈内存),因为进程本身8KB内存操作系统不能回收需要别人来辅助回收,因此我们每个进程都需要一个帮助它收尸的人...同时,linux系统规定:所有的孤儿进程都自动成为一个特殊进程(进程1,也就是init进程)子进程。...\n", getpid()); return 0; } 输出结果: 说明:这里父进程先运行死掉了,但是我们后面并没有发现特殊进程init为1,而是908,这其实是跟ubuntu系统有关系,真实是为

1.6K10

Linux系统编程Linux背景知识

1991年至1993年期间,许多人开始使用Linux,并且组织起来为Linux编写额外软件和工具。这些努力使得Linux逐渐成为一种强大操作系统。...随着Linux操作系统飞速发展,各种集成在Linux开源软件和实用工具也得到了应用和普及,因此,Linux也成为了开源软件代名词 总的来说,Linux开源性是其成功和广泛应用重要原因之一。...国内如中标麒麟Linux、红旗Linux、深度Linux系统软件厂商都推出Linux桌面操作系统,目前已经在政府、企业、OEM等领域得到了广泛应用。...但是,从系统整体功能、性能来看,Linux桌面系统与Windows系列相比还有一定差距,主要表现在系统易用性、系统管理、软硬件兼容性、软件丰富程度等方面。...每个发行版本都基于Linux内核,并包含一系列软件、工具和应用程序,以提供完整操作系统

9510

Linux软件卸载_linux系统怎么卸载一个软件

大家好,又见面了,我是你们朋友全栈君。 1.安装说明 configure作用:是源码安装软件时配置环境用 他根据你配置选项和你系统情况生成makefile文件 为make 做准备。...执行解压缩后产生一个名为configure可执行脚本程序。它是用于检查系统是否有编译时所需库,以及库版本是否满足编译需要等安装所需要系统信息。为随后编译工作做准备。命令为: #....卸载软件首先要知道软件包在系统中注册名称。...键入命令: #查询到当前系统中安装所有的软件包 rpm -q -a #查询pcre安装软件包名称 rpm -q -a | grep "pcre" #查询rpm包安装到哪里 rpm -ql pcre...对名为[package name]软件包进行卸载 rpm -e [package name] #由于系统中各个软件包之间相互有依赖关系。如果因存在依赖关系而不能卸载,rpm将给予提示并停止卸载。

17.4K30

linux系统下安装软件命令(在linux下安装win系统)

大家好,又见面了,我是你们朋友全栈君。...RabbitMQ是用erlang分布式语言开发,故需先安装erlang 下载erlangtar包 : erlang下载 下载rabbitmq包 : rabbitmq下载 下图为erlang下载界面...下图为RabbitMQ下载界面 首先连接到linux,切换至root用户,并cd至usr/local目录下,在该目录下使用如下命令新建erlang和rabbitmq文件夹 cd /usr...使用如下命令修改系统环境变量 vim /etc/profile 进入配置文件后,按i开始编辑,在空白处加入如下代码: #set erlang export ERLANG_HOME=$PATH:/usr/...页面,如下图所示则成功,并使用新创建用户访问 至此linux系统下安装rabbitmq结束 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128379

6.6K30

Linux系统软件管理

虽然使用源码编译安装可以具有提高速度个性化定制等优点,但对于 Linux发行商来说,则不容易管理软件包,毕竟不是每个人都会进行源码编译,如果能够将软件预先在相同硬体与系统上面编译好在发布的话,不就能够让相同...Linux 系统一套管理机制....,使用 -Fvh 则是比较好作法,因为没有安装软件不会安装到你系统,但是需要注意是,如果你使用是 -Fvh ,偏偏你机器上没有安装该软件,那么该软件并不会被安装在你 Linux 主机上面,...◆RPM 验证证书◆ 验证(Verify)功能主要在于提供系统管理员一个有用管理机制,作用方式是使用 "/var/lib/rpm" 下面的数据库数据内容来比对目前 Linux 系统环境下所有软件信息...和Linux系统应用程序管理器.最初于1998年发布,用于检索应用程序并将其加载到Debian Linux系统.Apt-get成名原因之一在于其出色解决软件依赖关系能力.其通常使用.deb-formatted

5.6K20

Linux系统编程:基本IO系统调用

文件描述符 表示 宏 0 标准输入(stdin) STDIN_FILENO 1 标准输出(stdout) STDOUT_FINENO 2 标准错误(stderr) STDERR_FILENO 遵循Linux...open()系统调用 对文件进行读写之前,必须先打开文件。Linux提供了系统调用open()。...read()系统调用 文件打开后,就能够读文件了。read()是最基础、最常见读取文件机制。...系统调用write()时,数据从用户空间缓冲区中拷贝到了内核空间缓冲区,但并没有立即把数据写入磁盘中,这称为延迟写。延迟写问题在于,如果在数据真正写入磁盘之前系统崩溃了,则数据可能丢失。...内核设置了一个时间,在该时间内将内核空间缓冲区上数据写入磁盘,该时间称为"最大存放时效"。Linux系统也支持强制文件立即写入磁盘上,这在后面介绍。

3K30

Linux系统GIC介绍与编程

**Interrupt Register, GICC_EOIR** 4.3 GIC编程 参考资料: 4.1 GIC介绍 ​ ARM体系结构定义了通用中断控制器(GIC),该控制器包括一组用于管理单核或多核系统中断硬件资源...系统每个CPU核心都有一个单独CPU接口。 中断在软件中由一个称为中断ID数字标识。中断ID唯一对应于一个中断源。软件可以使用中断ID来识别中断源并调用相应处理程序来处理中断。...呈现给软件中断ID由系统设计确定,一般在SOC数据手册有记录。...SGI既可以发给所有的核,也可以发送给系统中选定一组核心。中断号0-15保留用于SGI中断号。用于通信的确切中断号由软件决定。...在Distributor中,软件必须配置优先级、目标核、安全性并启用单个中断;随后必须通过其控制寄存器使能。 ​ 对于每个CPU interface,软件必须对优先级和抢占设置进行编程

2.2K20

【高级编程Linux read系统调用

比如 fork、clone、execve、exit等 那为什么一定要用系统调用来访问操作系统内容呢,其实这可以看做对内核保护,linux分为用户空间和内核空间,而用户空间是不允许访问内核空间数据...要实现系统调用,首先要能从用户空间切换到内核空间,这个切换在IA-32系统上是用汇编指令int $0x80来引发软件中断实现。这部分内容一般是在C标准库中实现。...引入 cache 层目的是为了提高 linux 操作系统对磁盘访问性能。 Cache 层在内存中缓存了磁盘上部分数据。...文件page cache结构 在 Linux 操作系统中,当应用程序需要读取文件中数据时,操作系统先分配一些内存,将数据从存储设备读入到这些内存中,然后再将数据分发给应用程序;当需要往文件 中写数据时...缓存目标是任何基于页对象,这包含各种类型文件和各种类型内存映射。为了满足普遍性要求,linux使用定义在linux/fs.h中结构体address_space结构体描述页高速缓存中页面。

6K110

Linux系统下进程编程(一)

,记得刚开始学编程时候,那时候就是从这里开始萌芽。那么写了这么多函数,为啥要从这里开始“进门”呢,个人理解就是一种规定。...main()函数: 然而在我们Linux系统里面编程,它也是要准备一些前期工作:它要有编译链接时引导代码-------操作系统应用程序其实在main执行前也需要先执行一段引导代码才能去执行main...更加好理解就是我文章开头那张照片里面显示那样,其实简单来理解,进程就我们在电脑上运行一个应用软件。...在我们Linux系统有一些函数可以获得进程号:getpid(获得当前进程ID)、getppid(获得父进程ID)、getuid(获取当前进程用户ID,比如root用户或是普通用户)、geteuid(...它一般在Linux启动时开始执行,系统关闭时才结束。

2.4K10

Linux系统编程fork详解

如果返回pid_t等于0的话表示当前进程是子进程,如果返回pid_t是大于0数说明当前进程是父进程,如果返回-1说明出错并设置errno。...其中父进程id为3912,子进程id为3913,其中父进程父进程应该为终端进程,id为2149。  ...最开始linux创建子进程实现方法是在子进程创建时就直接将父进程所有内容复制到子进程中,但是这一操作会造成不必要资源和时间消耗。所以就有了读时共享,写时复制机制。...系统会为子进程创建其自己4G虚拟内存,而虚拟内存又分为内核内存和用户内存,大小比为1:3。子进程虚拟地址映射了父进程虚拟地址所指向物理内存,所以父子进程实际上共享了同一块物理内存。...那么对于父子进程来说它们应该是两个独立进程,所以当父子进程对物理内存进行读操作时,二者是共享,但是如果父或子进程要进行写操作时候,此时父进程才会将要操作内容复制给子进程。

2.2K30

Linux系统编程】进程状态

那这么多进程在操作系统内被CPU调度运行时候呢其实并不是从一个进程运行开始,一直不停直到运行结束,而是每个进程被CPU运行一会儿,操作系统都会把它从操作系统上拿下来,然后把另一个放上来运行,这样重复快速交替运行...因为这两个状态是操作系统中进程比较核心两个状态,当然还有一个运行状态它相对比较好理解,我们后面针对具体Linux操作系统去讲解。...而我们上面了解内容其实就是基于操作系统这门课程来说,可以认为它对于所有具体操作系统都是成立,可能比较抽象。 而我们下面呢,要针对一款具体操作系统——Linux来学习一下进程状态。...看看Linux内核源代码怎么说 一个进程可以有多个状态(在Linux内核里,进程有时候也叫做任务),那首先我们可以来看一下在kernel源代码里关于进程状态定义: /* * The task state...所以,为了方便子进程退出后父进程或操作系统获取该进程退出结果,Linux进程退出时,进程一般不会立即死亡,而是要维持一个Z状态即——僵尸状态。 等这个进程真正被回收了,它状态就会变成X死亡状态。

15510

Linux系统编程】操作系统概念、定位 及系统调用

所以就需要另一种软件——操作系统。 那下面我们就来谈一谈操作系统 1. 操作系统概念和定位 首先要知道: 操作系统是一种软件,这个我们之前也提到过。...那软件的话通过上一篇文章学习我们知道软件想要运行的话就要先加载到内存里,那其实我们计算机开机时候就是在加载操作系统。 那操作系统是一款什么样软件呢?...这个我们之前也提过,操作系统是一款进行软硬件管理软件! 概念: 任何计算机系统都包含一个基本程序集合,称为操作系统(OS)。...比如校长告诉辅导员,让他下周一举办一个编程大赛,然后辅导员去落实,去准备,最后我们学生去执行。...比如有些操作系统上有人就基于系统调用接口写了图形化界面,有的操作系统设计者就基于系统调用接口写了shell和工具集,还有比如C语言里面的一些库函数或者Linux一些命令,我们可以直接使用,但他底层可能就是去调用对应系统调用去完成对应操作

12310

Linux系统编程Linux基本指令详解(二)

总结一下: mv命令是move缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用命令,经常用来备份文件或者目录。...就类似于Windows下这个搜索 总结: Linux下find命令在目录结构中搜索文件,并执行指定操作。 Linux下find命令提供了相当多查找条件,功能很强大。...由于find具有强大功能,所以它选项也很多,其中大部分选项都值得我们花时间来了解一下。 即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应权限。...在运行一个非常消耗资源find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大文件系统可能会花费很长时间(这里是指30G字节以上文件系统)。...补充说明:uname可显示linux主机所用操作系统版本、硬件名称等基本信息。

13310

Linux系统编程Linux编辑器——vim

从这篇文章开始,我们要来学习一些Linux开发工具。 这篇文章,我们先来学习一下Linux文本编辑器——vim。 1....vi/vim区别简单点来说,它们都是多模式编辑器,不同是vim是vi升级版本,它不仅兼容vi所有指令,而且还有一些新特性在里面。...,但是他让我们输入却不是root密码,而是当前普通用户密码。...但是我输了自己密码还是用不了。 那这是怎么回事呢? 我当前这个用户之所以用不了sudo,是因为我并不在系统信任列表里面。...sudo 目的是确保系统安全性,避免普通用户在没有适当权限情况下执行危险或敏感操作。只有经过授权用户才可以使用 sudo,并且需要提供自己密码来进行身份验证。

17510

几种常用Linux系统软件镜像源配置

几种常用Linux系统软件镜像源配置 1、CentOS6系统软件镜像源配置 CentOS 6操作系统版本结束了生命周期(EOL),Linux社区已不再维护该操作系统版本。 ?...建议升级操作系统至CentOS 7及以上,如果业务过渡期仍需要使用CentOS 6系统一些安装包,可以通过以下步骤,在CentOS 6操作系统中将源配置按照网络环境不同进行切换。...2、CentOS7系统软件镜像源配置 CentOS7为目前主流服务器操作系统 可以使用腾讯云软件镜像站中CentOS7软件镜像源 wget -O /etc/yum.repos.d/CentOS-Base.repo...CentOS-Base.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 3、Debian10系统软件镜像源配置...(图片可放大查看) 4、Fedora33系统软件镜像源配置 Fedora 33 cd /etc/yum.repos.d/ mkdir /etc/yum_repo_default_bak mv *.repo

4.2K30
领券