logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux内核代码风格 from kernel

Chinese translated version of Documentation/CodingStyleIf you have any comment or update to the content, please post to LKML directly.

#数据结构#emacs
Linux内核中的循环缓冲区

Linux内核中的循环缓冲区作者:西邮 王聪Linux内核中的循环缓冲区(circular buffer)为解决某些特殊情况下的竞争问题提供了一种免锁的方法。这种特殊的情况就是当生产者和消费者都只有一个,而在其它情况下使用它也是必须要加锁的。循环缓冲区定义在include/linux/kfifo.h中,如下:struct kfifo {unsigned char *buffer;unsigned

#数据结构#linux
Linux内核中的循环缓冲区

      Linux内核中的循环缓冲区(circular buffer)为解决某些特殊情况下的竞争问题提供了一种免锁的方法。这种特殊的情况就是当生产者和消费者都只有一个,而在其它情况下使用它也是必须要加锁的。循环缓冲区定义在include/linux/kfifo.h中,如下:struct kfifo {unsigned char *buffer; // buffer指向存放数据的缓冲区unsig

如何参与Linux内核开发 from kernel

Chinese translated version of Documentation/HOWTOIf you have any comment or update to the content, please contact theoriginal docume

#linux
Linux内核中获取当前时间

7.2. 获知当前时间内核代码能一直获取一个当前时间的表示, 通过查看 jifies 的值. 常常地, 这个值只代表从最后一次启动以来的时间, 这个事实对驱动来说无关, 因为它的生命周期受限于系统的 uptime. 如所示, 驱动可以使用 jiffies 的当前值来计算事件之间的时间间隔(例如, 在输入驱动中从单击中区分双击或者计算超时). 简单地讲, 查看

spin_lock spin_lock_irq

1.spin_lock会关闭中断。那么衍生出的spin_lock_irq跟它有什么区别呢?不是也是关闭中断吗?       我的理解是spin_lock关闭的是软中断, 禁止了内核抢占;软中断有spin_lock_bh(), spin_lock_bh()是禁止软中断,  s

esp32 基于esp-idf 的网页服务

本文展示了基于ESP32 IDF框架的Web服务器实现方案,包含WiFi连接(STA模式)、HTTP服务和硬件控制功能。主要特点包括:1) 通过GPIO2控制板载LED;2) 提供三个API接口(首页HTML、LED控制和模拟传感器数据);3) 配套前端页面实现LED状态切换和传感器数据实时显示(每2秒更新);4) 完整的工程结构说明。系统采用ESP32作为硬件平台,使用C语言编写服务器逻辑,前端

#服务器#运维
H264参数结构二:网络提取层NAL (Net Abstraction Layer) & 视频编码层VCL (Video Coding Layer)

         H.264 的功能分为两层,即视频编码层(VCL)和网络提取层(NAL,Network Abstraction Layer)。VCL 数据即编码处理的输出,它表示被压缩编码后的视频数据序列。在 VCL 数据传输或存储之前,这些编码的 VCL 数据,先被映射或封装进 NAL 单元中。          每个NAL 单元包括:一组对应于视频编码数据的 NAL 头信息和一个原始字节序列

#网络
到底了