【Linux驱动开发知识点】

文章目录

  • 同步与互斥
  • 设备模型
  • 线程通讯
  • 底层设备
  • 网络设备
  • misc
  • 块设备
  • 调试技术
  • Linux内核
    • 稳定性问题
    • 中断、异常和系统调用
    • 进程调度
    • 内存管理
    • 文件系统
  • 数据结构算法-笔试

同步与互斥

  • ​cache一致性​
  • ​内存一致性问题——内存屏障​
  • ​原子操作​
  • 锁机制
    • ​spin_lock与Read-Write Spinlock​
    • mutex互斥锁
    • ​semaphore信号量​
    • ​RCU锁​

设备模型

线程通讯

  • 用户空间线程通讯
  • 内核与用户进程通讯
  • android binder

底层设备

  • 总线设备及协议
    • 高速总线

      • USB
      • PCI/PCIE
    • 低速总线

      • ​IIC协议 与 Linux IIC子系统​
      • SPI
      • UART
      • I2S

网络设备

  • 以太网卡
  • WIFI无线网卡

misc

  • GPIO
  • ADC
  • PWM
  • DMA​

块设备

调试技术

  • ftrace
  • gdb
  • kdump
  • perf工具
  • crash
  • uprobe
  • eBPF

Linux内核

稳定性问题

    ​- OOM​ 
    ​- Carsh​ 
    - 死锁lockup
        - lockup
            - soft lockup
            - hard lockup
            - hungtask 

中断、异常和系统调用

进程调度

内存管理

  • 地址空间

    • iommu
    • SMMU
    • MMU
    • MPU
  • 伙伴系统​

  • slab

  • 内存回收

  • 水位管理​

  • 内存碎片化管理​

  • 内存调优参数​

  • 内存压力 - PSI​

  • misc: dmabuf, ​ION​

  • 内存漏泄检测​

  • 引导内存分配器memblock

  • CMA​

  • ZRam内存压缩​

  • 复合页与巨型页​

文件系统

  • address_space

数据结构算法-笔试

你可能感兴趣的:(linux,驱动开发,运维)