首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

概念

什么是?简单地说就是在不关闭电源的情况下对某些部件进行插入(连接)或拔出(断开)的操作。...现在电脑上绝大部分插头和插座,包括串口、并口等,都是不允许的,因为插入或拔出时会在瞬间产生一个较大的电流,导致烧毁某个配件… 那么都有那些插头是可以的呢?...其中可以的只有声卡上的各种接口以及USB口,你可以在开机状态下随便音箱(耳机)或诸如摄像头一类的USB设备。   ...其他的键盘鼠标PS/2口等虽然没有规定可以,但从经验上看来,即使也不会造成什么损坏(当然还是小心为妙)。   ...建议除了音视频接口和USB接口外,其他的不要。这是最安全的做法。

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

libudev+V4L2 linux usb摄像头列表发现以及事件

libudev+V4L2 linux usb摄像头列表发现以及事件 简介 最近工作计划本来是重写CameraCtrl 控制类以及实现推流。但是由于需求变动导致之前调研废弃,就暂时放这吧。...思路 设计初衷,当时设计思路为将CameraManager作为一个摄像头管理模块,用来管理摄像头列表,主要为事件对应的增删以及推流的管理。...负责摄像头事件的相关业务(列表获取,事件,摄像头信息) 推流函数接口,没什么实际意义就不具体放了。...第二种为 事件的时候,通过input事件来过滤vid,pid。...cameras.push_back(info); return true; } removeCameraInfo(std::string cardName, std::list &cameras)

2.6K30

udev实现热插拔

新的Linux内核使用udev代替了hotplug作为插管理,虽然有udevd管理,但有时候我们还是需要在应用程序中检测事件以便快速地处理,比如在读写SD卡的时候拔下SD卡,那么需要立即检测出该情况...该工作方式是异步的,用户空间程序不必使用轮询等技术来检测事件 内核中使用uevent事件通知用户空间,uevent首先在内核中调用netlink_kernel_create()函数创建一个socket...接着就绑定该文件描述符到sockadd_nl,注意该结构体nl_groups是接收掩码,取~0是将接收所有来自内核的消息,我们接收只需要NETLINK_KOBJECT_UEVENT即可。...接下来调用recvmsg开始接收内核消息,recvmsg函数需要我们填充message报头,包括指定接收缓存等工作。该函数会阻塞直到有事件产生。...事实上的时候产生的消息可不止一条呢,可以在revmsg的时候用一个循环接收更多的消息。

2.7K50

Linux内核配置

net.core.wmem_max = 16777216 #在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。...方法是在服务器上禁止 net.ipv4.tcp_timestamps = 0 #对于远端的连接请求SYN,内核会发送SYN + ACK数据报,以确认收到上一个 SYN连接请求包。...conf.all.secure_redirects = 0 #仅仅接收发给默认网关列表中网关的ICMP重定向消息 net.ipv4.conf.default.secure_redirects = 0 #该值越高则linux...内核执行启发式内存过量使用处理,方法是估算可用内存量,并拒绝明显无效的请求。遗憾的是因为内存是使用启发式而非准确算法计算进行部署,这个设置有时可能会造成系统中的可用内存超载。...#1 — 内核执行无内存过量使用处理。使用这个设置会增大内存超载的可能性,但也可以增强大量使用内存任务的性能。

2.4K30

Linux 内核】编译 Linux 内核 ⑤ ( 查看 .config 编译配置文件 | 正式编译内核 )

文章目录 一、查看 .config 编译配置文件 二、正式编译内核 一、查看 .config 编译配置文件 ---- 在上一篇博客 【Linux 内核】编译 Linux 内核 ④ ( 打开 Linux...内核编译 菜单配置 |菜单配置中的光标移动与选中状态 | 保存配置 | 配置项帮助文档 ) 中 , 已经将编译配置保存到了 .config 文件中 ; 查看 .config 编译配置文件 , 在 linux...内核源码根目录中 , 执行 gedit .config 命令 , 查看 .config 编译配置文件 : ( 也可以使用 vi , vim 等文本编辑器查看 ) 在 .config 配置中 , #...file; DO NOT EDIT. # Linux/x86 5.6.14 Kernel Configuration # # # Compiler: gcc (Ubuntu 5.4.0-6ubuntu1...---- 在 Linux 内核源码根目录 , 执行 sudo make j4 开始编译 Linux 内核 ;

11.8K40

Linux 内核】编译 Linux 内核 ④ ( 打开 Linux 内核编译 菜单配置 |菜单配置中的光标移动与选中状态 | 保存配置 | 配置项帮助文档 )

文章目录 一、打开 Linux 内核编译 菜单配置 二、菜单配置中的光标移动与选中状态 三、保存配置 四、配置项帮助文档 一、打开 Linux 内核编译 菜单配置 ---- 执行 make menuconfig...命令 , 弹出菜单配置 ; 二、菜单配置中的光标移动与选中状态 ---- 其中左侧的 * 表示选中状态 , 通过 上下箭头 按键 , 可以上下移动光标 , 按下 空格 按键 , 可以切换 选中 / 取消选中...状态 , 选中状态下 , 条目左侧会显示 * 符号 ; 按下 左右 箭头按键 , 会切换下面的 选项 ; 三、保存配置 ---- 选择 底部的 Save 选项 , 然后按回车 , 即可保存配置 ,...点击 OK , 继续下一步 , 保存完成 , 选择 Exit 退出 ; 内核的编译配置保存在了 .config 文件中 ; 四、配置项帮助文档 ---- 在菜单配置中 , 可以选择裁剪一些内核模块..., 内核越小 , 运行速度越快 ; 上面的内核编译选项 , 如果不清楚细节 , 暂时按照默认配置编译即可 ; 如果想要了解某一项配置的具体作用 , 选中指定的项 , 如 : 按下 " Shift +

2.2K20

Linux内核配置-ARP系列

这个Linux服务器X将发送ARP请求来获取目标(或网关)的mac地址。在这种情况下,ARP请求包的源IP地址是什么呢?...其实对于大部分路由器来说ARP请求包中的源IP地址使用发送ARP请求包的网络接口上配置的IP地址(在上面的例子中为IP2)。但是,linux服务器的行为是点不同。...在Linux服务器中通过Linux内核数据arp_announce,ARP请求中源地址的选择是完全可配置。...其实arp_announce是为了解决Linux服务器作为路由器时的arp问题,因为路由器一般是动态学习ARP包的(一般动态配置DHCP的话)。...当内网的Linux机器要发送一个到外部的ip包,那么它就会请求路由器的Mac地址,发送一个arp请求,这个arp请求里面包括了自己的ip地址和Mac地址。

5.6K20

Linux内核参数的配置方法

/proc/sys/下的文件和子目录比较特别,它们对应的是系统内核参数,更改文件内容就意味着修改了相应的内核参数,可以简单的使用echo命令来完成修改: echo 1 > /proc/sys/net/ipv4...使用echo修改内核参数很方便,但是系统重启后这些修改都会消失,而且不方便配置参数的集中管理。/sbin/sysctl命令就是用来查看和修改内核参数的工具。...sysctl -a会列出所有内核参数当前的配置信息,比遍历目录/proc/sys/方便多了。...更常用的方式是,把需要修改的配置集中放在/etc/sysctl.conf文件中,使用sysctl -p重新加载配置使其生效。...因此放在/etc/sysctl.conf中的系统参数设置在重启后也同样生效,同时也便于集中管理修改过了哪些内核参数。 最后,哪里有比较完整的内核参数说明文档?我觉得kernel.org的文档比较全。

15910

Linux 内核】编译 Linux 内核 ③ ( 安装 ncurses | 安装 flex | 安装 bison | 打开 Linux 内核编译配置菜单 )

文章目录 一、安装 ncurses 二、安装 flex 三、安装 bison 四、打开 Linux 内核编译配置菜单 开始编译 Linux 内核之前 , 需要先执行 make menuconfig 命令..., 打开 Linux 内核编译配置菜单 , 进行 编译配置 ; 执行上述命令后 各种报错 , 最终排查完毕后 , 需要安装 ncurses , flex , bison 这 3 个库或软件 , 参考...【错误记录】编译 Linux 内核报错 ( Unable to find the ncurses package. ) 【错误记录】编译 Linux 内核报错 ( /bin/sh: 1: flex:...not found ) 【错误记录】编译 Linux 内核报错 ( /bin/sh: 1: bison: not found ) 博客 , 进行安装 ; 一、安装 ncurses ---- 执行 sudo...-5.6.14# 四、打开 Linux 内核编译配置菜单 ---- 再次执行 make menuconfig 命令 , 成功弹出 菜单配置图形界面 ;

23.5K40

第4阶段——制作根文件系统之编译配置安装busybox(3)

(被inittab配置文件调用的应用程序) (5)C库(glibc,被应用程序调用的C库函数,比如:printf,strcmp,fopen等) 本节目的: 编译配置busybox (因为制作最小的根文件系统需要...init进程,以及运行各种命令等) 1 编译配置busybox 1.1 首先将busybox源码(位于资料光盘/system)放在linux中/work/system下 cd /work/system            ...得出: make menuconfig             //通过配置菜单配置.config文件 make                        //编译busybox可执行文件 make...3.4选择insmod/rmod/lsmod命令,支持2.6.x内核: ? 3.5 支持mdev(并支持medv.conf和),选择mount/umount命令(并支持NFS文件系统) ?...原因是 busybox-1.7.0顶层目录下Makefile没有使用交叉编译”arm-linux-” 在Makefile中添加”arm-linux-”: ?

1.5K50

LWN 105021: 主动内存碎片整理

内核中,“高阶” 内存分配指的是,指的是当一个应用需要大于一个页框的连续物理内存块时内核能够为其提供多个连续的页框的功能。...他的补丁也被指出和一些其他的工作有所相似,例如用于来支持内存。当内存要被移除系统时,相应内存区域上的页框必须要被移动到其他地方。...本质上说,内存补丁试图创建一块大的内存区域,而这区域刚好包括了实体内存相应的物理地址。...Dave Hansen 介绍了两个用于添加内存支持的补丁,一个来自于 IBM,另一个则是 Fujitsu 提供的。两个补丁各有优缺点。...在 Marcelo 的工作以及补丁中,都有大量关于移动页框用以释放成块内存的经验总结。在合并任一补丁前,有必要做些工作将这些补丁中最好的部分提取成一个最佳的方案。

1.2K20

第4阶段——制作根文件系统之编译配置安装busybox(3)

(被inittab配置文件调用的应用程序) (5)C库(glibc,被应用程序调用的C库函数,比如:printf,strcmp,fopen等) 本节目的: 编译配置busybox (因为制作最小的根文件系统需要...init进程,以及运行各种命令等) 1 编译配置busybox 1.1 首先将busybox源码(位于资料光盘/system)放在linux中/work/system下 cd /work/system            ...得出: make menuconfig             //通过配置菜单配置.config文件 make                        //编译busybox可执行文件 make...3.4选择insmod/rmod/lsmod命令,支持2.6.x内核: ? 3.5 支持mdev(并支持medv.conf和),选择mount/umount命令(并支持NFS文件系统) ?...原因是 busybox-1.7.0顶层目录下Makefile没有使用交叉编译”arm-linux-” 在Makefile中添加”arm-linux-”: ?

1.2K70
领券