logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

linux 之 virtio 子系统核心的数据结构

这2个字段均与virtio设备的VIRTIO_RING_F_EVENT_IDX特性有关,由于virtio驱动触发对方中断将导致CPU反复进出虚拟机 & 宿主机模式,从而降低性能,因此需要控制触发中断频率的机制。virtio_bus以core_initcall的方式被注册,该方式注册的启动顺序优先级很高(作为对比,module_init最终对应的是device_initcall),在使用中要注意不同

#数据结构
linux之调度管理(7)-SMP cpu 的spin-table启动

soc在启动阶段除了一些特殊情况外(如为了加快启动速度,在bl2阶段通过并行加载方式同时加载bl31、bl32和bl33镜像),一般都没有并行化需求。因此只需要一个cpu执行启动流程即可,这个cpu被称为primary cpu,而其它的cpu则统一被称为secondary cpu。为了防止secondary cpu在启动阶段的执行,它们在启动时必须要被设置为一个特定的状态。  当primary c

文章图片
#linux#运维#服务器
linux之调度管理(12)- SMP 负载均衡

负载均衡以当前CPU开始,自下而上地遍历调度域,从最底层的调度域开始做负载均衡。允许做负载均衡的首要条件是当前CPU是该调度域中第一个CPU,或者当前CPU是空闲CPU。详见should_we_balance()函数。在调度域中查找最繁忙的调度组,更新调度域和调度组的相关信息,计算出该调度域的不均衡负载值(imbalance)。在最繁忙的调度组中查找最繁忙的CPU,并把最繁忙CPU中的进程迁移到当

文章图片
#linux#负载均衡#运维
linux 之dma_buf (3)- dma_buf_attach/dma_buf_map_attachment

在上一篇中,我们学习了如何使用 CPU 在 kernel 空间访问 dma-buf 物理内存,但通常这种操作方法在内核中出现的频率并不高,因为 dma-buf 设计之初就是为满足那些大内存访问需求的硬件而设计的,如GPU/DPU。在这种场景下,如果使用CPU直接去访问 memory,那么性能会大大降低。因此,dma-buf 在内核中出现频率最高的还是它的 dma_buf_attach() 和 dm

文章图片
#linux#运维#服务器
linux之调度管理(12)- SMP 负载均衡

负载均衡以当前CPU开始,自下而上地遍历调度域,从最底层的调度域开始做负载均衡。允许做负载均衡的首要条件是当前CPU是该调度域中第一个CPU,或者当前CPU是空闲CPU。详见should_we_balance()函数。在调度域中查找最繁忙的调度组,更新调度域和调度组的相关信息,计算出该调度域的不均衡负载值(imbalance)。在最繁忙的调度组中查找最繁忙的CPU,并把最繁忙CPU中的进程迁移到当

文章图片
#linux#负载均衡#运维
linux之时间子系统(九)-timer 的实现机制

一、内核中timer 的数据结构定时器层是基于tick层(高精度定时器,tick_device 是one-shot 模式)之上的,是根据系统jiffies来触发的,精度相对比较低。利用定时器,我们可以设定在未来的某一时刻,触发一个特定的事件。经常,也会把这种低精度定时器称作时间轮(Timer Wheel)。在内核中,一个定时器是使用 timer_list 结构体来表示的:1.1 timer_lis

文章图片
#linux#运维#服务器
linux 之dma_buf (3)- dma_buf_attach/dma_buf_map_attachment

在上一篇中,我们学习了如何使用 CPU 在 kernel 空间访问 dma-buf 物理内存,但通常这种操作方法在内核中出现的频率并不高,因为 dma-buf 设计之初就是为满足那些大内存访问需求的硬件而设计的,如GPU/DPU。在这种场景下,如果使用CPU直接去访问 memory,那么性能会大大降低。因此,dma-buf 在内核中出现频率最高的还是它的 dma_buf_attach() 和 dm

文章图片
#linux#运维#服务器
linux 之dma_buf (1)- dma_buf 的初步介绍

因为不管是 Video、Camera 还是 Display、GPU,它们的buffer都来自于ION,而 ION 正是基于 dma-buf 实现的。

文章图片
#linux#运维#服务器
Linux rapidio- tsi721 芯片的doorbell 和message 代码分析(2)

第10类包格式是门铃事务格式。它没有数据载荷。门铃事务的请求包格式如下图所示:上图中Ftype字段固定为10,表示这是一个门铃事务,8位的Reserved字段应该置0,Source TID指的是请求方的事务ID, info(msb)表示的是发送信息的高8位,info(lsb)表示的是发送信息的低8位。如果信息是用数字表示的,而且长度大于8位,那么数据符合低地址存放高字节(big-endian)的格

#linux#运维#服务器
linux之docker- image.tar 的导出和导入

docker 镜像有时无法从外网访问,需要把docker 打包导出到本地,然后以文件的形式,发送给其他人,再然后其他人把docker 镜像文件导入到自己的服务器本地镜像仓库,方可使用。my_projectv2:v2 :要保存的 Docker 镜像的名称和版本号,这里是一个名为 my_projectv2的镜像,版本号为 v2。my_projectv2:v2:要新创建的镜像的名称和版本号,这里是新建一

文章图片
#linux#docker#运维
    共 24 条
  • 1
  • 2
  • 3
  • 请选择