论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
数据库
›
SqlServer
›
Linux 内核态,用户态,以及如何从内核态到用户态,交互 ...
Linux 内核态,用户态,以及如何从内核态到用户态,交互方式有哪些 ...
千千梦丶琪
金牌会员
|
2024-10-17 02:39:23
|
显示全部楼层
|
阅读模式
楼主
主题
813
|
帖子
813
|
积分
2439
一、Linux 内核态,用户态
Linux 内核态,用户态,以及如何从内核态到用户态,我来说下我的理解
很多面试官,面试也是照搬照套,网上找的八股文面试题,面试的人也是背八股文,刚好背到了,就过了
运气欠好,就不记得了。
开发过程,很多是临时用不到,面试官考量的,在于理解,假如那种没程度的领导面试喜欢听你背八股文,别去也好,技术没什么上进
,考虑去一个公司,考虑更多是,技术成长,项目经验积聚,职业发展,打工打不了一辈子,中国环境决定的,不是我们个人决定的。
进入正题,什么是内核态,什么是用户态?
工作在linux内核源码,就叫内核态,工作在内核上面,和内核无关的,就叫用户态,这个无关,并不是和内核一点关系没有,用户态工作
是需要内核态上面,才能工作的。大概这么理解,内核态离开用户态可以工作,不需要用户态,但是用户态需要借助内核态,才能工作。
很多八股文说,内核态是工作在0-4g空间的,就完了。
什么是用户态呢,比如写个应用步调,这个应用有算法,有qt图形界面,或串口输出的交互界面,有业务逻辑功能,这个功能,可以播放视频,音频,操控各种外设,读写存取文件等等。这个应用步调,还可以是个ls,cat,cd,mv,等等shell命令。简单说就是个用户步调,在内核之上。
什么是内核态,就是工作在linux空间的,包罗(进程管理,进程调度,内存管理,文件管理,驱动管理),linux提供的所以核心功能
他们是运行在0-1g空间的。
二、用户空间和内核空间的交互方式,有哪些
这是面试最喜欢问的,我认为这么问的意义是什么
先来回想一下,内核启动时,是如何进入到用户空间的,linux启动最后,会调用start_kernel,这个函数,会调用一个kernel_init,这个就是init进程,全部用户空间的祖宗,全部进程,都是由它而创建,或它的子孙,间接创建,他是个守护进程,不会死掉,除非系统退出。
ps命令,查看到init进程,ps是工作在用固态下,所以看到的是sbin/init,用户态下一个应用步调
1、系统调用
用户空间,通过系统调用,陷入到内核代码工作的空间,比如(fork,pthread,创建进程,线程,read,write,open,打开读写驱动,调用了内核提供的api,就叫系统调用)
2、shell命令
cat命令读取信息,算不算,当然算,从内核空间,获取内核的状态,信息等
设置内核算不算,也算设置内核系统参数
sysctl -w net.ipv4.tcp_tw_reuse=1
sysctl -w net.ipv4.tcp_tw_recycle=1
echo "net.ipv4.tcp_tw_reuse=1" >> /etc/sysctl.conf
echo "net.ipv4.tcp_tw_recycle=1" >> /etc/sysctl.conf
复制代码
内核从console控制台,提供一个交互界面,就是用户空间和内核空间,访问的一种方式。
3、中断
中断,异常,也是一种方式,我之前忘记了,回来补充
软中断,硬中断,都是一种和内核交互的交互方式。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
千千梦丶琪
金牌会员
这个人很懒什么都没写!
楼主热帖
【C++】ZZ1864- 解题精讲
SQLserver的安装
StoneDB社区答疑第一期
数据湖Hudi与对象存储Minio及Hive\Spar ...
一文搞清UNIX/Linux与Windows文件换行 ...
开发了一个Java库的Google Bard API, ...
C语言程序设计(一)计算机思维导论 ...
ASP.NET Core MVC 从入门到精通之自动 ...
Cesium 几何体贴模型 sampleHeight(二 ...
【HarmonyOS】初识HarmonyOS
标签云
挺好的
服务器
快速回复
返回顶部
返回列表