E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux开发(内核态)
Linux开发
讲课30---基于ARM体系的内核启动解析
Bootloader至少完成以下基本的初始化准备:设置并初始化RAM(必须),引导加载程序应找到并初始化内核将用于系统中易失性数据存储的所有RAM。它以机器相关的方式执行此操作。(它可以使用内部算法来自动定位和调整所有RAM的大小,或者可以使用机器中RAM的知识或引导加载程序设计者认为合适的任何其他方法。)设置设备树dtb(必须),设备树blob(dtb)必须8字节对齐,并且大小不能超过2兆字节。
嵌入式开发1
·
2024-08-30 00:48
linux开发讲课
linux
arm开发
运维
Binder驱动注册
Binder驱动注册Android进程间利用Binder机制实现通信,在App进程中,调用ioctl方法使程序陷入
内核态
执行,ioctl是用户态程序控制设备的一个系统调用,既然这样,肯定需要虚拟一个设备
gczxbb
·
2024-08-28 22:15
BIO、NIO、AIO的区别
应用程序发起read调用后,会一直阻塞,直到内核把数据拷贝到用户空间,阻塞等待的是内核数据准备好和数据从
内核态
拷⻉到⽤户态这两
Qlh_行则将至
·
2024-08-25 15:20
nio
服务器
数据库
Linux中内核与驱动程序
1.内核开发与裸机开发的区别2.用户态和
内核态
二、Linux设备驱动程序1.具体思路2
请叫我7plus
·
2024-08-23 20:21
Linux设备驱动
linux
单片机
运维
riscv简单常用汇编指令xv6
entry.Smretasmvolatilereadcsrwritecsrriscv常见csr寄存器ecall,系统调用指令cpu执行异常处理指令的三种事件异常处理相关寄存器用户态trapsret指令页表切换操作用户态系统调用过程总结
内核态
耶耶耶耶耶~
·
2024-08-22 13:46
操作系统
操作系统
Linux--汇编语法配置初始化的原理
------改编自正点原子
Linux开发
手册我们在学习STM32的时候几乎没有用到过汇编,可能在学习UCOS、FreeRTOS等RTOS类操作系统移植的时候可能会接触到一点汇编。
广药门徒
·
2024-08-22 03:41
linux
运维
服务器
检测usb口HotPlug-netlink
SELinux,Linux系统的防火墙分为
内核态
的netfilter和用户态的iptables,netfilter与iptables的数据交换就是通过Netlink机制完成。
cany1000
·
2024-03-29 01:00
linux
Java学习笔记:atomic的实现原理?
在多线程的场景中,我们需要保证数据安全,就会考虑同步的方案,通常会使用synchronized或者lock来处理,使用了synchronized意味着
内核态
的一次切换。这是一个很重的操作。
曲钟人散
·
2024-03-26 10:47
Linux用户态和
内核态
通信方法--netlink
Linux用户空间和内核空间通信方法:系统调用、procfs、ioctl接口、netlinknetlink是Linux用户态与
内核态
通信最常用的一种方式。
嵌入式软件和硬件
·
2024-03-01 10:50
Linux系统和应用编程
嵌入式面试:瑞芯微
文章目录一、2024秋招1.1IIC的速率范围:1.2linux驱动子系统汇总:1.3linux关抢占情况汇总:1.4操作或者读写一个文件时,从用户态到
内核态
再到物理介质的流程(考点:虚拟文件系统):一
EEer!
·
2024-02-20 01:40
工作
面试
瑞芯微
校招
嵌入式笔试
optee CA/TA flow
libteec\src\tee_client_api.cTEEC_InvokeCommandioctl(session->ctx->fd,TEE_IOC_INVOKE,&buf_data)通过syscall陷入
内核态
Hola_ya
·
2024-02-19 23:55
信息安全
安全架构
iptables防火墙
一、简介netfilter/iptables分别是
内核态
模块和用户态工具,netfilter位于Linux内核中的包过滤功能体系,iptables位于/sbin/iptables,用来管理防火墙规则的工具
刘某的Cloud
·
2024-02-19 23:46
网络集群
linux
服务器
网络
运维
云计算基础-计算虚拟化-CPU虚拟化
有不同的指令集,如下图,CPU有4各指令集:Ring0-3,指令集是在服务器上运行的所有命令,最终都会在CPU上执行,但是CPU并不是说所有的命令都是一视同仁的,它会把命令分为不同的指令集Ring0指令集称之为
内核态
指令集
比特微联
·
2024-02-19 13:58
云计算
计算机操作系统-笔记
现代操作系统阅读笔记第一章引论1.操作系统定义操作系统是运行在
内核态
的软件,它执行两个基本上独立的任务。隐藏计算机底层硬件的实现,为用户及应用程序提供一个资源集的清晰抽象。管理计算机硬件资源。
C+ 安口木
·
2024-02-19 10:30
计算机
笔记
microsoft
浅谈linux - vs code搭建运行调试环境
概述在
Linux开发
过程中,用不惯vim的用户往往会选择vscode软件或者sourceinsight软件编写相关的源代码,由于vscode对linux系统的支持及界面的美观,所以小编往往会选择使用vscode
不只会拍照的程序猿
·
2024-02-15 09:40
浅谈linux
linux
ubuntu
嵌入式
vscode
gdb
【Linux】yum软件包管理器
目录Linux软件包管理器yum什么是软件包Linux安装软件查看软件包关于rzszLinux卸载软件查看yum源扩展yum源下载
Linux开发
工具vim编辑器上述vim三种模式之间的切换总结:命令模式下
lzb_kkk
·
2024-02-15 00:16
Linux
linux
运维
服务器
一文理解系统用户态和
内核态
内核态
(KernelMode):cpu可以访问内存的所有数据,包括外围设备,例如硬盘,网卡,cpu也可以将自己从一个程序切换到另一个程序。
宋唐不送糖
·
2024-02-14 15:31
如何复用外部shell脚本
在
Linux开发
中,经常会编写shell脚本来执行一些任务,通常是一个脚本只做一件事,随着任务的增加,脚本会越来越多,可复用的地方也会逐渐增加,这时就需要提取出脚本中的公共的功能放到一个通用的脚本中,其他脚本都能复用它本篇文章介绍
Linux开发那些事儿
·
2024-02-14 09:04
Linux-进程信号
进程信号初步认识信号信号的存储结构信号的处理方式信号的产生硬件异常产生的信号核心转储sigset_t信号集信号集的操作函数对block表的操作对pending表的操作对handler表的操作信号的捕捉用户态和
内核态
信号的处理过程可重入函数
猿来是这样^
·
2024-02-14 09:53
Linux系统原理和系统编程
linux
服务器
信号处理
unix
【lesson51】信号之信号处理
而进程工作的状态一般如下:在
内核态
中,从
内核态
返回用户态的时候,进行信号检测和处理!我们为什么会进入
内核态
?进行系统调用,有一些缺陷、陷阱等!怎么进入
内核态
?使用int80----->一般内置在系
(unstoppable)
·
2024-02-14 06:46
linux
信号处理
Linux
信号
C++
阻塞非阻塞更详细的理解
一个程序的执行过程,要么处于用户态,要么处于
内核态
。当程序从用户态切换到
内核态
时:用户空间的部分还能继续干活---->非阻塞用户空间的部分不能继续干活---->阻塞
乱蜂朝王
·
2024-02-14 05:57
C++
C++
基于嵌入式
linux开发
的“2048”游戏综合设计
学号:17020110019姓名:高少魁【嵌牛导读】本设计将之前提到的在FPGA开发平台上设计的游戏2048移植到了嵌入式开发平台上,利用基于qemu开源软件的虚拟mini2440开发板,使用Framebuffer图形界面编程,屏幕上显示棋盘以及数字的图片、用户的分数、游戏胜利/失败的提示信息等。该游戏可以检测用户输入的内容进行各种操作,如上下左右移动、重启游戏、退出、直接取得游戏胜利等。该程序图
Clearlovekui9
·
2024-02-13 18:29
操作系统面试问题——说一下什么是零拷贝?
零拷贝是一种IO操作优化技术,主要用于减少CPU在用户态和
内核态
之间的上下文切换次数以及减少数据拷贝次数,可以显著提高数据传输的效率。
迷茫的羔羊羊
·
2024-02-13 11:20
操作系统
网络
操作系统
linux
harmonyos
macos
Linux 信号(signal):信号的捕捉流程
一、程序的运行状态 程序运行状态分为
内核态
和用户态。程序在运行库函数、用户自定义函数等第三方函数时就会在用户态运行;而程序在运行系统调用接口时是在
内核态
运行。
爱喝酸奶!
·
2024-02-13 06:54
Linux
linux
信号
signal
信号的捕捉流程
程序的运行状态
Linux:信号的处理
通俗来说,这个合适的时候指的是从
内核态
返回用户态的时候,这个过程中
海绵宝宝de派小星
·
2024-02-13 06:18
Linux
知识总结
linux
服务器
网络
【Linux】信号保存与信号捕捉处理
信号保存概念3.信号保存系统接口(1)sigset_t(2)sigprocmask()(3)sigpending()(4)signal()(5)测试系统接口二、信号捕捉处理1.信号的处理2.理解用户态和
内核态
YoungMLet
·
2024-02-12 15:20
Linux系统
linux
服务器
网络
c++
c语言
运维
VSCode CUDA C/C++ 远程开发环境配置
网上没有找到很好的文档,在连续踩了好几天坑的情况下,决定自己写一篇文档记录一下踩坑过程(已经浪费很多时间了,就索性再花点时间记录)最终配置好的环境支持intellisense,一键编译/调试为什么选择在
Linux
·
2024-02-11 18:07
Linux C语言高级
、软件包管理及shell命令1.流行的两种软件包管理机制1.Deb软件包:由DebianLinux首先提出的软件包管理机制2.RPM软件包:由RedhatLinux推出的软件包管理机制2.Debian
Linux
Black Allen
·
2024-02-11 09:25
linux
debian
波奇学Linux:git和gdb调试
client和server一体意味着远程仓库和本地仓库是平等地位,远程仓库是特殊的仓库而已,我们的clone远程仓库,某种意义上相当于远程仓库的push的操作git本质上是操作系统,就像centos是基于
Linux
社交达人波奇酱
·
2024-02-11 07:41
Linux
git
linux
Linux开发
:PAM3 Ubuntu(22.04)安装PAM开发库
Ubuntu22.04默认是不带pam开发库的,需要通过以下命令进行安装sudoaptinstalllibpam0g-dev关于PAM的文档可以参考:UbuntuManpage:pam-PluggableAuthenticationModulesLibrary也可以通过man进行查看:man3pam编译程序是需要加入的头文件:#include#include#include需要链接的库-lpam
风静如云
·
2024-02-11 05:58
Linux开发
linux
Linux开发
工具的使用 (gcc/g++ | gdb)
目录一、gcc/g++1.关于gcc/g++2.gcc如何使用gcc选项:预处理:编译:汇编:连接:函数库是什么:函数库分为动态库和静态库两种二、调试器gdb1.关于gdb2.gdb的使用gdb选项:Linux是一个广泛用于开发的操作系统,提供了许多强大的工具和环境来支持开发者.一、gcc/g++1.关于gcc/g++GCC(GNUCompilerCollection)是一个由GNUProject
Faiz..
·
2024-02-11 03:25
Linux
linux
运维
gdb
golang for 循环创建协程问题
因为协程创建需要进行堆栈分配,上下文准备,以及与
内核态
的线程进行映射工作等。所以在协程创建好后,大家同时去访问tmp变量,这个时候tmp就被多个协程共享了,导致取到的值都一样了。解决方案:就是使用go
拿来吧 你
·
2024-02-10 18:33
笔记
APUE学习:信号
Linux信号机制的基本流程:用户程序为一个信号注册一个信号处理函数,例如SIGQUIT注册了一个sig_hander函数因为某些原因,进程从用户态切换到
内核态
从
内核态
要返回到用户态时,内核会去检测有没有给该进程传递一个
hjyzjustudy
·
2024-02-10 17:20
Apue
linux
Linux开发
:PAM2 配置文件
PAM配置文件是用于粘合应用程序和PAM服务模块,通过其中的配置,可以动态的选择PAM服务模块,从而增加认证的可配置性和灵活性。PAM配置文件通常保存在/etc/pam.d/目录下,当应用程序进行认证时,会选择对应的PAM配置文件,而PAM配置文件又对PAM服务具体使用哪些模块(动态链接库)进行了描述,从而动态的加载PAM模块完成认证。1.PAM配置文件的位置在Ubuntu22.04上,PAM配置
风静如云
·
2024-02-10 14:48
Linux开发
linux
Linux开发
:PAM1 介绍
PAM(PluggableAuthenticationModules)是Linux提供的一种通用的认证方式,他可以根据需要动态的加载认证模块,从而减少认证开发的工作量以及提供认证的灵活度。1.PAM的框架PAM的框架由一下几个部分构成1)应用程序,即需要使用认证服务的程序,这些应用程序是使用抽象出的统一的PAMAPI接口,来调用PAM服务,完成认证请求。2)PAM库,实现PAMAPI,并读取PAM
风静如云
·
2024-02-10 14:47
Linux开发
linux
嵌入式
Linux开发
---Socket CAN通信驱动硬件编程
提醒:使用LinuxCAN开发的需要具备网络编程的部分基础,SocketCAN的使用类似于TCP/IP
Linux开发
板通过Socketcan驱动设备的参考源码demo见文末。
牛马大师兄
·
2024-02-09 12:30
嵌入式Linux经验教程
嵌入式硬件
linux
网络协议
arm开发
mcu
iot
tcp/ip
嵌入式
Linux开发
---RS485通信驱动硬件编程
提醒:RS485的使用与UART串口的使用基本相同,差别在于使用485时需要手动切换485芯片的收发引脚模式。Linux驱动RS485通信的程序源码Demo见文末。1、RS485基础铺垫智能仪表随着80年代初单片机技术的成熟而发展起来,世界仪表市场基本被智能仪表所垄断,这归结于企业信息化的需要,而企业在仪表选型时其中的一个必要条件就是要具有联网通信接口。最初是数据模拟信号输出简单过程量,后来仪表接
牛马大师兄
·
2024-02-09 12:00
嵌入式Linux经验教程
linux
嵌入式硬件
arm开发
驱动开发
mcu
物联网
【Linux】
Linux开发
工具(yum、gdb、git)详解
一、软件包管理器yum1、什么是软件包在Linux下安装软件,通常的办法是下载到程序的源代码,并进行编译,得到可执行程序。但这样太麻烦了,于是有些人把一些常用的软件提前编译好,做成软件包(可以理解成在Windows上的安装程序)放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安装。软件包和软件包管理器,就好比"App"和“应用商店”这样的关系。yum(Yellowdog
炫酷的伊莉娜
·
2024-02-09 07:34
Linux
linux
yum
gdb
git
嵌入式
linux开发
板推荐
嵌入式
Linux开发
板是一种专为嵌入式系统开发而设计的硬件设备,它预装了Linux操作系统和必要的开发工具,为开发者提供了完整的嵌入式系统开发环境。
CC学妹
·
2024-02-08 21:23
笔记
经验分享
fghbbbbbbbbbb
磁盘满的本质分析专栏:《Linux从小白到大神》|系统学习
Linux开发
、VIM/GCC/GDB/Make工具、Linux文件IO、进程管理、进程通信、多线程等,请关注专栏免费学习。文件
Mindtechnist
·
2024-02-08 18:44
sqlite
mysql
oracle
hbase
json
ajax
bootstrap
如何在openKlyin中设置ssh并结合cpolar内网穿透实现远程连接
固定地址连接openKylin是中国首个基于Linux的桌面操作系统开发者平台,通过开放操作系统源代码的方式,打造具有自主创新技术的开源桌面操作系统,目前多数使用方式都是桌面操作,openKylin是基于
Linux
nagiY
·
2024-02-08 18:24
てんさい
ssh
运维
内网穿透
【转】操作系统
内核态
和用户态
转载自:https://www.cnblogs.com/bakari/p/5520860.html内核-用户如上图所示,从宏观上来看,Linux操作系统的体系架构分为用户态和
内核态
(或者用户空间和内核)
Crowley_1306
·
2024-02-08 12:01
zzzzzzzzzzzzzzzzz
磁盘满的本质分析专栏:《Linux从小白到大神》|系统学习
Linux开发
、VIM/GCC/GDB/Make工具、Linux文件IO、进程管理、进程通信、多线程等,请关注专栏免费学习。文件
Mindtechnist
·
2024-02-08 10:45
eclipse
ide
visual
studio
github
git
ci/cd
windows
内存管理(上)
操作系统分为两种运行级别,分别是
内核态
与用户态。
浅墨入画
·
2024-02-08 06:50
java性能调优权威指南_《Java性能权威指南》笔记----Java性能调优工具
内核态
时间(sy):cpu执行内核代码所占时间的百分比,系统态时间与应用相关。空闲时间(id):cpu空闲时间百分比。
这样哈
·
2024-02-08 05:53
java性能调优权威指南
Linux下如何复用外部shell脚本
在
Linux开发
中,经常会编写shell脚本来执行一些任务,通常是一个脚本只做一件事,随着任务的增加,脚本会越来越多,可复用的地方也会逐渐增加,这时就需要提取出脚本中的公共的功能放到一个通用的脚本中,其他脚本都能复用它
码农_在线
·
2024-02-08 03:05
【Go】三、Go并发编程
并发编程我们主流的并发编程思路一般有:多进程、多线程但这两种方式都需要操作系统介入,进入
内核态
,是十分大的时间开销由此而来,一个解决该需求的技术出现了:用户级线程,也叫做绿程、轻量级线程、协程python-asyncio
清河__
·
2024-02-08 02:20
Go
golang
开发语言
后端
嵌入式
Linux开发
板各种不同的微处理器架构
嵌入式
Linux开发
板的微处理器架构可能有很多种,这取决于开发板的硬件配置。常见的架构包括ARM、MIPS、PowerPC等。这些架构都是精简指令集RISC处理器架构。
CC学妹
·
2024-02-07 22:19
笔记
经验分享
【Linux】
Linux开发
常用api
博客主页:PannLZ系列专栏:《Linux系统之路》不要让自己再留有遗憾,加油吧!文章目录Linux入门常用api1.文件操作(系统io)1.1打开一个文件:open()1.2读取文件内容:read()1.3数据写入文件:write()1.4关闭文件:close()1.5改变文件偏移量:lseek()1.6获取文件信息stat2.线程进程相关2.1创建新进程:fork()2.2创建线程pthre
PannLZ
·
2024-02-07 20:28
Linux系统之路
linux
运维
服务器
个人开发
fgcvbnm
磁盘满的本质分析专栏:《Linux从小白到大神》|系统学习
Linux开发
、VIM/GCC/GDB/Make工具、Linux文件IO、进程管理、进程通信、多线程等,请关注专栏免费学习。文件
Mindtechnist
·
2024-02-07 12:34
sqlite
json
ajax
bootstrap
硬件工程
arm开发
驱动开发
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他