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更偏向于工业使用,所以里面的很多函数和类都已经封装得很完…...
AI Agent在智能风控中的实战:多智能体欺诈检测与预警
AI Agent在智能风控中的实战:多智能体欺诈检测与预警 你有没有过明明是正常交易却被银行冻结账户的糟糕体验?或是听说过某电商平台上线新活动首日就被黑产团伙薅走数千万补贴的新闻?随着黑产欺诈向团伙化、专业化、动态化演进,传统依赖规则引擎、单模型机器学习的风控体系已…...
别再乱用分支了!Flowable四种网关(排他/并行/包容/事件)实战选型指南
Flowable四大网关实战选型:从混乱到精准的决策艺术当你在设计一个请假审批流程时,是否遇到过这样的困惑:部门经理审批后需要同时通知HR和财务,但某些特殊情况下又需要跳过财务直接归档?这种看似简单的业务需求…...
从Gamma函数到泊松分布:一个概率论中的含参量积分实用案例解析
Gamma函数与泊松分布:概率论中的数学之美 在数据科学和机器学习的实践中,概率分布构成了建模的基石。当我们深入探究这些分布背后的数学原理时,Gamma函数以其优雅的性质和广泛的应用脱颖而出。它不仅连接了离散与连续概率世界,更在…...
基于ATmega2560与ISD1700的智能语音时钟:硬件选型、软件架构与避坑指南
1. 项目概述与核心价值去年折腾那个用ATMega328驱动三块显示屏的时钟时,我主要精力都花在了如何在320x240的TFT屏幕上把时间、日期和图标画得又准又好看上。项目在《Elektor》杂志上发表后,一位热心的读者给我提了个新想法:能不能做个会“说话…...
使用TaotokenCLI工具一键配置开发环境中的API密钥
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 使用Taotoken CLI工具一键配置开发环境中的API密钥 在团队协作或个人开发中,为每个项目或成员手动配置大模型API密钥和…...
Unity发行版DLL调试实战:DnSpy无源码IL级断点指南
1. 这不是“反编译”,而是Unity游戏开发者的日常调试手段你有没有遇到过这样的情况:接手一个Unity发行版游戏,想快速验证某个功能逻辑是否按预期执行,或者排查一个偶发的崩溃,但手头只有打包后的Assembly-CSharp.dll&a…...
JS中forEach与普通for
for就不用说了,最普通的循环函数forEach1. 只写 1 个参数只接收当前遍历元素let arr [10,20,30] arr.forEach(item > {console.log(item) // 依次 10、20、30 })2. 写 2 个参数依次接收元素值、下标索引let arr [10,20,30] arr.forEach((item, index) > {co…...
昇腾NPU模型服务化——从离线模型到高可用推理服务
模型训练完只是第一步。真正产生业务价值的是把模型部署成724小时在线服务——毫秒级延迟、支持动态Batching、能扛住流量洪峰,且具备高可用性。 这篇将手把手教你基于昇腾NPU构建生产级模型推理服务,涵盖框架选型、服务化架构、动态Batching优化、热加载…...
开源三角洲机器人Delta-Robot One:从入门到精通的创客实践指南
1. 项目概述:一个为学习而生的开源三角洲机器人如果你对机器人感兴趣,但又觉得它高深莫测、无从下手,那么Delta-Robot One(我们亲切地称它为“One”)可能就是为你量身打造的入门项目。这不是一个遥不可及的工业设备&am…...
抖音批量下载工具:免费获取无水印视频的终极解决方案
抖音批量下载工具:免费获取无水印视频的终极解决方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback suppor…...
