Linux面试题
当准备 Linux 面试时,以下是一些可能会遇到的常见 Linux 面试题:
1. 什么是Linux?解释一下Linux操作系统的特点。
2. 什么是Linux内核?Linux内核的作用是什么?
3. 如何在Linux系统上查看当前的IP地址和子网掩码?
4. 如何在Linux系统上查看当前的内存使用情况?
5. 如何在Linux系统上查看CPU使用情况?
6. 列出你知道的Linux常见命令,并解释它们的功能。
7. 如何在Linux系统上查看一个文件的内容?
8. 怎样在Linux系统上查看正在运行的进程?
9. 请解释一下什么是文件权限,并说明 rwx 权限表示的含义。
10. 如何在Linux系统上安装软件包?
11. 怎样在Linux系统上重启或关机?
12. 解释一下Linux系统中的硬链接和软链接。
13. 怎样使用grep命令在文件中搜索特定的字符串?
14. 怎样使用scp命令在不同的Linux系统之间复制文件?
15. 怎样查找Linux系统中的大文件或大文件夹?
16. 解释一下什么是Linux文件系统以及常见的文件系统类型。
17. 如何在Linux系统中查看日志文件?
18. 怎样使用crontab设置定时任务?
19. 解释一下Linux中的环境变量,以及如何设置和使用环境变量。
20. 怎样使用tar命令对文件和目录进行打包和压缩?
这些问题只是一些可能的示例,你还可能面对其他与Linux相关的问题。建议你在面试前对这些问题进行准备,并确保对Linux的基本概念、命令和常见操作有一定的掌握。同时,记得在回答问题时要简洁明了,并尽量提供具体的实例或命令来支持你的回答。
1.标准IO与文件IO的区别?
1.标准IO是标准C库定义的一组输入输出的函数接口,而文件IO是系统定义的一组输入输出的函数接口。
2.标准IO有缓存机制,而文件IO没有缓存机制,每次都引起系统调用。
3.标准IO只能操作普通文件,而文件IO处理目录文件其余文件都可以操作。
4.标准IO是通过流来操作文件,而文件IO是围绕文件描述符进行操作,文件描述符是非负整数,依次分配。
5.标准IO默认打开三个流,stdin,stdout,stderr;文件IO默认打开三个文件描述符,0(标准输入),1(标砖输出),2(标准错误);
2.静态库和动态库的区别?
静态库和动态库的本质区别是代码载入时刻不同
1.静态库:静态库在程序编译时被连接到目标代码。
优点:程序运行不需要该静态库,运行时不需要库,运行效率高。
缺点:(1)程序将静态库的代码复制到目标代码中,代码体积大。
(2)静态库进行升级后,程序需要重新编译。
2.动态库:动态库是在运行时被载入代码中。
优点:(1)不需要将代码复制到程序中,代码体积小。
(2)库升级后,不需要重新编译,升级简单。
(3)不同的程序若需要相同的动态库,动态库存在一份即可。
缺点:运行时库必须存在,移植性差。
3. 什么是孤儿进程?僵尸进程?
1.当父进程比子进程先结束,子进程成为孤儿进程,内init进程收养,成为后台进程。
2.当子进程比父进程先结束,父进程没有及时对子进程进行回收,此时子进程成为僵尸进程,要避免僵尸进程的产生。
4. 什么是守护进程?步骤?
守护进程:该类进程在后台运行,运行时间比较长,一般在Linux启动时运行,在系统关闭时停止执行,脱离终端,并且按照周期执行。
1.创建子进程,父进程退出(fork),让子进程成为孤儿进程,成为后台进程;
2.在子进程中创建会话(setsid),让子进程成为会话组组长,为了让子进程完全脱离终端
3.改变子进程运行路径为根目录,程序运行的路径不能删除或卸载。(chdir("/"))
4.修改文件权限掩码,提高文件权限,增强灵活性umask(0);
5.关闭文件描述符,关闭不需要的文件描述符(close)
5. 进程与线程区别
相同点:进程和线程都为系统提供了并发执行能力。
不同点:
资源和调度:进程是资源分配的最小单位,线程是系统调用的最小单位。
地址空间:一个进程创建的多个线程共享进程的资源,而进程之间地址空间相互独立。
通信机制:线程之间通信相对简单,通过全局变量就可相互通信,但要考虑临界资源的问题,而进程之间的通信相对复杂,需要进程间的通信机制(3-4G内核空间)进行通信。
安全性:进程的安全性相对较差,当一个进程结束时会导致所有线程退出,进程相对安全。
6.死锁
死锁:死锁是指两个或两个以上的进程在执行过程中,由于竞争资源和通信造成的阻塞,如果没有外力的作用,它们都将无法推动下去。
1.互斥使用:当资源被一个线程占有时,别的线程不可使用
2.不可抢占:资源申请者不能强制夺取资源占有者的资源,只能等待资源占有者主动释放
3.请求和保持:资源请求者在请求资源的同时保持对原有资源的占有
4.循环等待:存在一个等待队列,p1占有p2的资源,p2占有p3的资源,p3占有p1的资源,形成一个等待环路。
7. 线程的同步与互斥?
1.同步:指的是多个任务(线程),按照规定的顺序执行共同完成一件事情。
2.互斥:多个线程访问临界资源时,同一时间内只能有一个线程访问临界资源
8. 实现同步的机制
信号量,互斥锁+条件变量,信号灯集
9. 进程间通信方式?
1.无名管道,2.有名管道,3.信号,4.共享内存,5.消息队列,6.信号,7.套接字
10. 无名管道有名管道区别?
1.无名管道只能用于具有亲缘关系的两个进程之间的通信,而有名管道可以用于两个没有任何关系的进程之间的通信。
2.无名管道和有名管道都采用半双工通信,
3.无名管道可以看成特殊的文件,可以通过文件IO进行操作,文件系统不可见。有名管道可以用路径名来指出,文件系统可见,但内容保存在内存;
4.有名管道和无名管道都基于文件描述符的通信方式,当无名管道建立时会自动创建两个文件描述符fd[0],fd[1],fd[0]是固定的读端,fd[1]是固定的写端。而有名管道需要自己打开文件获得文件描述符。
5.有名管道和无名管道遵循先进先出的原则,有名管道不支持lseek操作
11. 共享内存、信号灯集、消息队列步骤?函数?
共享内存:1.创建key值(ftok),2.创建或打开共享内存(shmget)3.映射共享内存到用户空间(shmat)4.撤销映射(shmdt)5.删除共享内存(shmctl)
信号灯集:1.创建key值(ftok)2.创建或打开信号灯集(semget)3.初始化信号灯集(semctl)4.进行pv操作(semop)5.删除信号灯集(semctl)
消息队列:1.创建key值(ftok)2.创建或打开消息队列(msgget)3.添加消息:将消息按照类型添加到已打开的队列末尾(msgsnd)4.读取消息:将消息按照类型从队列中读取(msgrcv)5.删除消息队列(msgctl)
12.TCP三次握手机制?
1.客户端通过connect函数主动连接,客户端发送一个SYN握手包,并且进入发送状态
2.服务器通过accept建立通信,服务器发送ACK表示确认,并且发送SYN包给客户端,发送完成后进入接收状态。
3.客户端收到服务器的ACK和SYN后向服务器发送确认包,发送完毕后进入确认状态。服务器收到ACK包后也进入确认状态。
13.TCP四次挥手机制?
1.主动关闭方会发送一个FIN包给被动方进入FIN_WAIT状态
2.被动方收到FIN包后,会给主动方发送ACK包表示确认,并进入CLOSE_WAIT状态,如果有数据没有发送完毕,则继续发送,直到发送完毕。
3.被动方发送FIN包,进入LAST_ACK状态
4.主动关闭方收到FIN包后,会回复一个ACK包。被动关闭方收到ACK后关闭连接。
14.关于TCP建立可靠通信的原因
1.序列号和确认机制
每次数据传输,都会有PUSH,每次PUSH包发送之后,接收者都会回复ACK包,表示确认,是TCP可靠通信的原因之一。
2.超时重发机制
如果发送方在一段时间内没有收到确认消息,发送者会认为数据丢失,重新发送数据
3.三次握手机制
4.四次挥手机制
相关文章:
Linux面试题
当准备 Linux 面试时,以下是一些可能会遇到的常见 Linux 面试题: 1. 什么是Linux?解释一下Linux操作系统的特点。 2. 什么是Linux内核?Linux内核的作用是什么? 3. 如何在Linux系统上查看当前的IP地址和子网掩码&#…...
NODEJS版本管理工具
一、使用NVM 下载 Linux下载 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh widows下载地址 https://github.com/coreybutler/nvm-windows/releases 安装Node.js版本: nvm install 14.16.0 切换Node.js版本: nvm use …...
【个人笔记本】本地化部署 类chatgpt模型 详细流程
不推荐小白,环境配置比较复杂 全部流程 下载原始模型:Chinese-LLaMA-Alpaca-2linux部署llamacpp环境使用llamacpp将Chinese-LLaMA-Alpaca-2模型转换为gguf模型windows部署Text generation web UI 环境使用Text generation web UI 加载模型并进行对话 准…...
RFID与人工智能怎么融合,RFID与人工智能融合的应用
随着物联网技术的不断发展,现实世界与数字世界的桥梁已经被打通。物联网通过各种传感器,将现实世界中的光、电、热等信号转化为有价值的数据。这些数据可以通过RFID技术进行自动收集和传输,然后经由人工智能算法进行分析、建模和预测…...
性能测试 —— Jmeter 常用三种定时器
1、同步定时器 位置:HTTP请求->定时器->Synchronizing Timer 当需要进行大量用户的并发测试时,为了让用户能真正的同时执行,添加同步定时器,用户阻塞线程,知道线程数达到预先配置的数值,才开始执行…...
每个高级前端工程师都应该知道的前端布局
首发于公众号 大迁世界,欢迎关注。📝 每周一篇实用的前端文章 🛠️ 分享值得关注的开发工具 😜 分享个人创业过程中的趣事 快来免费体验ChatGpt plus版本的,我们出的钱 体验地址:https://chat.waixingyun.cn 可以加入网站底部技术群,一起找bug,另外新版作图神器已上线…...
100道基于Android毕业设计的选题题目,持续更新
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 大家好,我是程序员徐师兄、今天给大家谈谈基于android的app开发毕设题目,以及基于an…...
idea显示git分支信息(GitToolBox插件)
效果图 说明 本身idea在右下角会有git分支信息,但是显示的当前打开文件的分支信息,并且不够显眼 解决 1、安装插件(GitToolBox插件) 2、修改idea.properties project.tree.structure.show.urlfalse ide.tree.horizontal.default.autoscrollingfalse将…...
Hadoop知识点之Hadoop发展历程
一、Hadoop名字的起源 Hadoop这个名字不是一个缩写,它是一个虚构的名字。 该项目的创建者,Doug Cutting如此解释Hadoop: 这个名字是我孩子给一头吃饱了的棕黄色大象命名的。我的命名标准就是简短,容易发音和拼写,没有…...
阿里云无影电脑:免费体验无影云电脑3个月
阿里云无影云电脑免费领取流程,免费无影云电脑配置为4核8G,可以免费使用3个月,阿里云百科分享阿里云无影云电脑(云桌面)免费申请入口、申请流程及免费使用限制条件说明: 目录 阿里云无影云电脑免费申请入…...
菜鸟教程《Python 3 教程》笔记(20):面向对象
菜鸟教程《Python 3 教程》笔记(20) 20 面向对象20.1 面向对象技术简介20.2 创建类20.2.1 类定义20.2.2 实例化20.2.3 初始化20.2.4 类变量、实例变量20.2.5 类方法、实例方法、静态方法 20.3 访问可见性20.3.1 property装饰器 20.4 动态性20.4.1 __slot…...
vue2编辑markdown
效果 npm i mavon-editor --save 只能全局注册 使用...
PCB走线规则
1、线间距。 这里应该遵循3W规则,所谓3W就是为了减少线间串扰,应保证线间距足够大,当线中心不少于3倍线宽,则可 保持70%的电场不互相干扰。如要达到98%的电场不互相干扰,可使用10W的间距。——这是查阅华为PCB布线规则…...
webpack静态资源上传到CDNS (阿里云 OSS,亚马逊 AWS S3,七牛云 Qiniu Cloud Kodo)webpack-plugin-cdns
webpack-plugin-cdns 是一个 Webpack 插件,用于实现将前端项目中的资源(如 JavaScript、CSS、图片等)上传到 CDN(OSS、S3、Kodo) 服务器。从而完成资源的 CDN 加速。 在开发前端项目时,我们通常会将静态资源放在本地服务器上&…...
python 异常
1.捕获异常 2.密码爆破 3....
stm32--独立看门狗
最近学习到独立看门狗,总结下笔记 1.看门狗的作用:防止程序异常跑飞,跑飞时,进行系统复位,从而不会导致代码瘫痪,奔溃卡死在某段程序。 2.看门狗其实是12bit递减计数器,,减到0会产…...
vue3中css使用script中定义的变量
代码 <template><div class"box">haha</div> </template><script setup lang"ts"> const boxWidth 500px </script><style lang"scss"> .box {width: v-bind(boxWidth);height: 200px;background-c…...
Ubuntu 22.04 安装配置 flatpak
Ubuntu 22.04 安装配置 Flatpak 安装 Flatpak sudo apt install flatpakFlatpak 仓库配置 官方仓库 https://flathub.org/repo/flathub上交大镜像 https://mirror.sjtu.edu.cn/flathub flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatp…...
oracle创建数据库以及用户,并导入dmp格式数据
oracle创建数据库以及用户,并导入dmp格式数据 安装可参考之前的文章https://blog.csdn.net/qq_43421954/article/details/132717546?spm1001.2014.3001.5501 首先创建表空间(也就是其他数据库所谓的数据库) 使用的是navicat,连接配置可以参…...
[deeplearning]pytorch实现softmax多分类问题预测训练
写在前面:俺这两天也是刚刚加入实验室,因为之前的学习过程中用到更多的框架是tensorflow,所以突然上手pytorch多少有些力不从心了。 这两个框架的主要区别在与tensorflow更偏向于工业使用,所以里面的很多函数和类都已经封装得很完…...
【C++初阶】动态内存管理
👻内容专栏: C/C编程 🐨本文概括: C/C内存分布、C语言动态内存管理、C动态内存管理、operator new与operator delete函数、new和delete的实现原理、定位new表达式、常见面试问题等。 🐼本文作者: 阿四啊 …...
Mac电脑安装Zulu Open JDK 8 使用 spring-kafka 消费不到Kafka Partition中的消息
一、现象描述 使用Mac电脑本地启动spring-kakfa消费不到Kafka的消息,监控消费组的消息偏移量发现存在Lag的消息,但是本地客户端就是拉取不到,通过部署到公司k8s容器上消息却能正常消费! 本地启动的服务消费组监控 公司k8s容器服…...
CodeArts Check代码检查服务用户声音反馈集锦(2)
作者:gentle_zhou 原文链接:CodeArts Check代码检查服务用户声音反馈集锦(2)-云社区-华为云 CodeArts Check(原CodeCheck),是自主研发的代码检查服务。建立在华为30年自动化源代码静态检查技术…...
红帽RHCE9.0学什么内容,新版有什么变化
【微|信|公|众|号:厦门微思网络】 一、红帽公司介绍 红帽是首个(也是全球最大、全球领先)的企业开源软件解决方案提供商,在过去 20 几年里,红帽已经成为开源社区里令人尊敬的成员,赞助了数百个开源项目&…...
线性代数的本质(一)——向量空间
文章目录 向量空间向量及其性质基与维数向量的坐标运算 《线性代数的本质》 - 3blue1brown 高中数学A版选修4-2 矩阵与变换 《线性代数及其应用》(第五版) 《高等代数简明教程》- 蓝以中 向量空间 In the beginning Grant created the space. And Grant said, Let there be vec…...
PP-Tracking之C++部署
文章目录 概要环境fastdeploy源码编译PP-Tracking源码编译使用参考概要 PP-Tracking是基于飞桨深度学习框架的业界首个开源实时跟踪系统。针对实际业务的难点痛点,PP-Tracking内置行人车辆跟踪、跨镜头跟踪、多类别跟踪、小目标跟踪及流量计数等能力与产业应用,同时提供可视…...
智慧公厕建设,要以技术为支撑、体验为目的、业务为驱动
#智慧公厕[话题]# #智慧公厕系统[话题]# #智慧公厕厂家[话题]# #智慧公厕驿站[话题]# 在数字化城市与智慧城市的大力推进下,作为社会重要的生活设施,智慧化的公共厕所的建设变得越来越重要。作为城市的基础部件之一,公厕的智慧化建设需要进行…...
通过Sealos 180秒部署一套K8S集群
通过Sealos 180秒部署一套K8S集群 一、主机准备 1.1 主机操作系统说明 序号操作系统及版本备注1CentOS7u9 1.2 主机硬件配置说明 k8s集群CPU及内存最低分别为2颗CPU、2G内存,硬盘建议为100G 需求CPU内存硬盘角色主机名值8C8G1024GBmasterk8s-master01值8C8G1024…...
如何获取美团的热门商品和服务
导语 美团是中国最大的生活服务平台之一,提供了各种各样的商品和服务,如美食、酒店、旅游、电影、娱乐等。如果你想了解美团的热门商品和服务,你可以使用爬虫技术来获取它们。本文将介绍如何使用Python和BeautifulSoup库来编写一个简单的爬虫…...
开启编程之门
自我介绍 目前已经大二了,计算机专业在读,是一个热爱编程,做事踏实专注的人。转眼间一年已经过去了,也接触编程一年了,但开始并没有对所学所想进行很好的总结和输出,这一年也有了新的很多感悟与心得&#x…...
零基础网站制作视频教程/中国万网域名注册官网
问题 使用前后端分离模式开发项目时,往往会遇到这样一个问题 -- 无法跨域获取服务端数据 这是由于浏览器的同源策略导致的,目的是为了安全。在前后端分离开发模式备受青睐的今天,前端和后台项目往往会在不同的环境下进行开发,这时…...
一流本科专业建设点网站/百度关键词价格怎么查询
图的独立集:寻找一个点集,其中任意两点在图中无对应边二分图的最大独立集图的点数-最大匹配数1 #include <iostream>2 #include <cstdio>3 #include <map>4 #include <cstring>5 6 using namespace std;7 8 struct people9 {10 …...
利用社交网站做淘宝客/网上销售渠道
非阻塞通信:异步通信通常是使MPI应用程序实现高性能计算的关键,使用异步通信具有如下优势:1)函数是非阻塞的,这使得进程在与另一个进程通信的同时继续参与计算;2)如果应用适当,可以绕…...
做网站制作赚钱吗/网站建设公司哪个好呀
使用java开源itext库对pdf进行操作,分主要分两步先查找指定文字位置,然后再在指定位置插入图片。 1.查找指定文字的坐标位置 这里主要通过实现类RenderListener来完成查找坐标位置 代码如下: package com.anyu.PDFUtils;import java.io.F…...
手机网站跟PC端网站有啥区别/我要推广网
确定字符串长度int strlen(string str)比较两个字符串1、strcmp函数对两个字符串进行二进制安全的比较,并区分大小写int strcmp(string str1,string str2)2、以不区分大小写的方式比较两个字符串int strcasecmp(string str1,string str2)3、求两个字符串相同部分int…...
东莞外贸网络推广/seo排名快速优化
刊号 # 63 - Jul 12, 2009 文章 波音展示了基于NetBeans 平台的富客户端的应用 NetBeans 平台是最好的用来创建并运行富客户端的应用的方法之一,并且被很多大的,中等的和小的公司所注意--波音就是其中之一。对像波音这样的公司推荐的方法好奇吗…...