首页
学习
活动
专区
圈层
工具
发布

linux常见试题(3)-简答题

三.简答题 1.简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程。 Linux通过i节点表将文件的逻辑结构和物理结构进行转换。...经常使用的进程调度命令为:at、batch、crontab。 3. 简述DNS进行域名正向解析的过程。 首先,客户端发出DNS请求翻译IP地址或主机名。...5.简述安装Slackware Linux系统的过程。 (1)对硬盘重新分区。  (2)启动Linux系统(用光盘、软盘等)。 (3)建立Linux主分区和交换分区。...网络文件系统是应用层的一种应用服务,它主要应用于Linux和Linux系统、Linux和Unix系统之间的文件或目录的共享。...对于用户而言可以通过 NFS方便的访问远地的文件系统,使之成为本地文件系统的一部分。采用NFS之后省去了登录的过程,方便了用户访问系统资源。

1.8K10

【Linux】进程信号的产生

信号的处理方式有三种:默认动作、忽略、自定义动作 二、信号的产生 1、常用的信号解析 我们常用的信号就是ctrl+c了,可以及时的把我们的前台进程(在Linux中,一个终端一般只有一个bash,每一次登陆只允许一个进程是前台进程...,通常会执行相应的操作(如终止进程) 我们所学习的信号,就是用软件的方式,对进程模拟的硬件中断 3、产生方式 首先我们要知道的是:不管信号的产生方式有多少中,信号是由操作系统发送给进程的,因为操作系统是进程的管理者...我们信号学习的第一个产生的方式就是键盘组合键,ctrl+c中断、ctrl+z暂停等等 我们学习过程中知道的第二个产生的方式就是kill命令,通过配合不同的选项可以达到不同的效果 第三个产生的方式就是系统调用...,类似于int kill(pid_t pid, int sig);在进程中杀死另一个进程 第四个产生的方式就是程序异常,比如说除数为0的情况,或者野指针的情况 第五个产生的方式就是通过软件模拟形成闹钟...进程,在正常执行进程的时候它就跑到后台了,我们做了一个小实验,在后台程序test执行过程中,我输入了ls命令,不难看出他也打印出来了我们对应的内容,此时前台就是bash进程,此时再按ctrl+c就不会被捕捉了

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

    产品产生过程「建议收藏」

    一、需求分析: 相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面...在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度...,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都出现过。...编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永远存在,你必须永远面对这个问题,大名鼎鼎的微软,可曾有连续三个月不发补丁的时候吗?从来没有! 五、软件测试 测试编写好的系统。...软件在使用的过程中,用户在使用的过程中还会出现各种未知的情况,程序员或者产品设计方,根据产品使用方的实际情况进行一定时间的软件维护。

    36530

    【Linux】详解信号产生的方式

    这里说明一下几个常见的信号: SIGINT(2号信号):中断信号,通常由用户按下Ctrl+C产生,用于通知进程终止。...如果想查阅更多的信号,可以使用man 7 signal指令在官方手册中进行查找。 二、键盘产生信号 不同的操作系统产生信号的键盘组合键可能不同,这里说的是ubuntu系统下。...四、软件条件产生信号 在操作系统中,由软件条件产生的信号通常指的是通过某种软件操作或系统状态触发的信号。这些信号用于通知进程某个特定事件已经发生。...下面会说明常见的软件条件: 4.1、管道通信 【Linux】匿名管道实现简单进程池-CSDN博客之前在这一篇博客中,我已经介绍了进程间使用管道通信的四种情况和五种特性,其中在第四种情况中,我曾经说过,读端关闭了...五、异常产生信号 常见的进程出异常产生信号有除0异常,操作系统会向进程发送8号信号(SIGFPE)。野指针,操作系统会向进程发送11号信号(SIGSEGV)。

    68510

    Linux:信号的预备和产生

    (想象我们从小到大然后认识新事物的过程) ——> 小时候如果你的父母想让你认识一个具体的东西比如苹果,那么他就必须通过一些简单的词语向你描述苹果的特征,而如果认识具体的事比如说吃饭,那么除了描述吃饭这件事的特征...结论1:进程必须具备 识别信号+能够处理信号的能力  问题3:即使我们当前并没有信号产生,我们是否也应该知道信号产生后应该干什么??...结论2:即使信号没有产生,我们的进程也要具备处理信号的能力!! 信号的处理能力是属于进程内置功能的一部分!!   问题4:信号产生了,为什么有时候并不会被立即处理??...结论3:当进程真的收到一个具体信号的时候,进程可能正在执行更重要的任务而不能立即处理,这个过程会有一定的时间窗口,所以进程必须具备保存信号的能力! 问题5: 收到信号后我们可能会有哪些处理方式呢??...二、信号的产生 2.1 同步和异步 1、信号的产生和我们自己的代码是异步的! 如何理解同步和异步??

    62210

    初识Linux · 信号产生

    在本文中,介绍信号的预备知识和信号产生。那么话不多说,直接进入主题吧!...从上面我们可以得出来的结论是: 信号是随时产生的,要处理信号的前提条件是能认识这个信号。 那么,如果外卖员打电话的时候,我们正在打游戏,那么外卖员发出的信号我们应该如何处理呢?...信号:Linux提供的一种向指定进程发送处理某种特定事件的方式。 所以信号实际上是一种处理方式,那么信号是同步的还是异步的呢?...现在我们不妨浅显的理解信号的理解和保存: 对于Linux中的任意文件,都是先描述再组织,每个进程也就是task_struct,里面有一个成员变量是uint32_t signals,可是一个成员变量如何表示所有信号呢...那么提问,进程是内核数据结构对象,谁有资格修改内核数据结构对象中的值呢? 当然只有OS了。 信号产生 以上是信号的预备知识,现在,我们来深究信号产生的原理, 信号可以怎么样产生呢?

    39210

    初谈Linux信号-=-信号的产生

    忽略快 递(快递拿上来之后,扔掉床头,继续开一把游戏) 快递到来的整个过程,对你来讲是异步的,你不能准确断定快递员什么时候给你打电话 Linux中信号 在Linux操作系统中通过kill -l命令可查看所有的信号...信号是Linux系统提供的一种向指定进程发送特定事件的一种方式,系统在收到信号时会做识别和处理。...信号产生是异步的:信号的产生和目标进程的运行是两条线,信号可以在程序的任意时刻产生,并且会打断当前正在执行的代码,转而执行信号处理函数。...信号的产生 通过kill命令,向指定的进程发送指定的信号 键盘可以产生信号:ctrl+c、ctrl+\ 系统调用方式 #include #include #include...例如当前进程执行了除以0的指令,CPU的运算单元会产生异常,内核将这个异常解释 为SIGFPE信号发送给进程。

    64810

    Linux进程信号【信号产生】

    ---- 前言 在 Linux 中,进程具有独立性,进程在运行后可能 “放飞自我”,这是不利于管理的,于是需要一种约定俗成的方式来控制进程的运行,这就是 进程信号,本文将会从什么是进程信号开篇,讲述各种进程信号的产生方式及作用...,部分信号只做了解即可 1.2、信号的作用 早在 《Linux进程学习【进程状态】》 我们就已经使用过 信号 了,比如: kill -9 pid 终止进程运行 kill -19 pid 暂停进程运行 kill...可以通过 man 7 signal 进行查询 man 7 signal 简单总结一下,1~31 号信号对应的功能如下(表格内容引用自 2021dragon Linux中的31个普通信号) 信号编号 信号名...到目前为止,我们学习了很多信号,分别对应着不同的情况,其中有些信号还反映了异常信息,所以将信号进行细分,还是很有必要的 ---- 6、核心转储 Linux 中提供了一种系统级别的能力,当一个进程在出现异常的时候...,而是设置 core dump 位 及 终止信号 也就是说,父进程可以借此判断子进程是否产生了 核心转储 文件 ---- 总结 以上就是本次关于 Linux进程信号【信号产生】的全部内容了,作为进程信号系列的开篇之作

    2.4K10

    【Linux】对信号产生的内核级理解

    一、键盘产生信号  键盘产生信号这里就要涉及一个重要的概念了,叫硬件中断。我这里会粗粒度地说一下键盘产生信号,以及信号被上层软件读到的过程,只是说一下我自己的理解。...1.2、键盘产生信号并被读取的过程 在CPU上是有各个针脚的,每个针脚有对应的编号。针脚在主板上是可以和键盘进行连接的。...因为发送信号要修改PCB内核数据结构的内容,所以无论产生信号的方式有多少种,最终都是由操作系统将信号写入进程PCB中的。...二、出异常产生信号 2.1、除0 在介绍出异常产生信号之前,首先要先介绍一下CPU中的部分常见寄存器,因为出异常产生信号往往都是跟CPU中的寄存器有关的。...无论产生信号的方式有多少种,最终都是由操作系统将信号写入进程PCB中的。

    52010

    【Linux信号】一:信号的概念、信号的产生

    信号是信息的载体,是Linux/UNIX 环境下,古老而经典的通信方式, 现在依然是主要的通信手段。Unix早期版本就提供了信号机制,但不可靠,信号可能丢失。...信号相关的一些琐碎知识点 3.1 产生信号的方式 按键产生,如:Ctrl+c、Ctrl+z、Ctrl+\ 系统调用产生,如:kill、raise、abort 软件条件产生,如:定时器alarm,setitimer...3.4 PCB中的信号相关信息 Linux内核的进程控制块PCB是一个结构体task_struct,除了包含进程id、状态、工作目录、用户id、组id、文件描述符表、还包含了信号相关的信息,主要指阻塞信号集和未决信号集...我们主要关注中间的那个值。 不同的操作系统定义了不同的系统信号。因此有些信号出现在Unix系统内,也出现在Linux中,而有的信号出现在FreeBSD或 Mac OS 中却没有出现在Linux下。...这里我们只研究Linux系统中的信号。

    1.5K10

    【Linux】信号概念与信号产生

    我们可以查看Linux中的信号列表,指令为: kill -l 其中我们发现,0号、32号和33号信号是没有的。...前台进程在运行过程中用户随时可能按下 Ctrl+C 而产生一个信号,也就是说该进程的用户空间代码执行到任何地方都有可能收到 SIGINT 信号而终止,所以信号相对于进程的控制流程来说是异步的! 4....二、信号的产生 1. 键盘组合键 上面我们已经知道了,我们可以通过 ctrl + c 这样的键盘组合键产生信号。...如果我们出现野指针,我们当前访问的时候,通过页表完成对虚拟地址到物理地址的转化,查表的过程并不是操作系统直接来查的,因为对于操作系统来说很费时间,效率低下,所以这个过程是由一个叫做 MMU 的硬件(内存...形成的 core.pid 文件的过程就是核心转储。 那么为什么要进行核心转储呢?

    1.2K10

    Linux操作系统之信号:信号的产生

    前言: 上篇文章我们大致讲解了信号的有关概念,为大家引入了信号的知识点。但光知道那些是远远不够的。 本篇文章,我将会为大家自己的讲解一下信号的产生的五种方式,希望对大家有所帮助。...一、键盘(硬件)产生信号 回顾 我们上文曾经说过,当我们在前台运行的一个进程时,尤其是while控制的死循环程序,我们可以通过按下ctrl + c按键来终止进程。...除了13信号外,还有一个14信号SIGALRM,这就涉及到了一个系统调用:alarm闹钟 alarm() 是 Unix/Linux 系统提供的 定时器函数,用于在指定时间后向当前进程发送 SIGALRM...(标记位为0表示正常,为1表示溢出) 当我们不终止进程,使用自己的处理方法,由于进程会轮循调度的原因,保存上下文信息,不终止进程就会一直调度该进程,发现溢出->发送信号,不断重复该过程  野指针越界访问也是类似的形式...我们可以通过一些命令来看到出错的信息来调试。(或者gdb) 这里我就不在赘述,感兴趣的可以了解一下。 总结: 今天我们详细讲解的信号产生的五种方式,希望对大家有所帮助!!

    27210

    深入了解linux系统—— 进程信号的产生

    相关概念 在了解进程是如何保存信号之前,先了解一下一些概念: 信号递达:进程实际执行信号的处理动作 信号未决:信号从产生到递达的状态 阻塞:进程可以阻塞某一个信号;(被阻塞的信号不会被递达,直到解除对信号的阻塞...在Linux内核中,对于信号存在三张表分别是:block、pending、handler;它们分别存储了进程对于信号的阻塞信号,收到信号以及进程对于信号的处理方式。...了解了信号的保存方式block、pending、handler表; 那发送信号的本质就是将进程的task_struct中的pending表对应的bit位置1(修改内核数据结构对象); 进程处理信号本质就是检查进程...系统调用 上述信号集操作函数,是修改当前已有信号集sigset_t; 而在Linux内核中,存在block表和pending表来记录进程对于信号的屏蔽和未决状态;那我们能否修改内核中的block表呢?...在内核中pending表是记录进程2未决信号的状态的,给进程发信号的本质就是修改内核中进程的pending表。

    31100

    【Linux系统】进程信号:信号的产生和保存

    2.2 硬件异常 核心概念:硬件异常 -> 内核 -> 信号 这个过程并不像“快递员主动打电话”,而更像“你在拆快递时突然被包装盒里的机关扎伤了手”——伤害是在执行操作的过程中由硬件直接检测并立即报告的...这个过程是同步的:信号的产生是由进程自己的某条特定指令直接导致的,而不是像 kill 或 Ctrl+C 那样是外部异步事件。...当这些电路在执行指令的过程中检测到某些特定条件时,会立即中断当前控制流,并强制 CPU 去执行一段预设好的、属于操作系统的代码。这个过程是硬件自动完成的。...检测过程: 当执行一条 idivl 指令(整数除法)时,如果除数是 0,ALU 中的除法电路会直接检测到这个非法操作。 除法电路立即产生一个 Divide Error Fault。...Core Dump(核心转储),在 Linux 和类 Unix 系统中,是指当进程异常终止(崩溃)时,操作系统将该进程在崩溃瞬间的整个用户空间内存内容(以及部分内核数据结构)完整地保存到一个磁盘文件中的过程

    47310

    JVM-垃圾回收,一个对象产生到灭亡的过程

    一个对象产生到灭亡的过程新产生的对象优先分配在Eden区。当Eden区满了或放不下了进行GC,这时候其中存活的对象会复制到from区,如果from区放不下则会全部进入老年代,然后Eden内存全部清除。...之后产生的对象继续分配在Eden区,当Eden区又满了或放不下了,这时候将会把Eden区和from区存活下来的对象复制到to区(同理,如果存活下来的对象to区都放不下,则这些存活下来的对象全部进入年老代...其特点为:算法相对简单,需要扫描两遍空间(第一次 标记,第二次清除),清理后容易产生碎片。适用于存活对象多的情况(标记多,回收少),多为老年代。...其特点为:需要一块空的内存去移动复制对象,调整对象的引用,只需扫描一次,清理后不会产生碎片,适用于存活对象少的情况(标记少,回收多),多为新生代。...UseTLAB-XX:+PrintTLAB-XX:+TLABSize-XX:+PrintGC-XX:+PrintGCDetails-XX:+PrintGCTimeStamps-verbose:class (类加载详细过程

    60620

    【Linux】进程信号 --- 信号的产生 保存 捕捉递达

    在生活中不乏关于信号的场景,比如红绿灯,闹钟,手机消息提示音,上课的铃声,田径场起跑的枪声等等,那么信号从产生到被处理的具体过程是怎么样的呢?...另外补充一个知识点,linux规定,当用户在和shell交互时,默认只能有一个前台进程,所以当我们自己编写的程序运行时,bash进程就会自动由前台进程转换为后台进程。...上面我们谈到了四种产生信号的方式,有通过键盘产生信号,通过系统调用产生信号,由于硬件异常导致软件自发的产生信号,由于某些软件条件产生信号等等,老铁们不难发现,这四种产生信号的方式最终都落到了操作系统本身身上...上面的叙述过程抛出了中断和异常,以及堆栈空间等概念。...注意:此方法对于Linux系统可用,但不保证在其他UNIX系统上也可用,比如MAC OS 或 直接本身就是UNIX操作系统。

    2.4K10
    领券