ID:247970

深呼吸

操作系统研发工程师、C/C++研发工程师

  • 公司信息:
  • 龙芯中科技术股份有限公司
  • 工作经验:
  • 5年
  • 兼职日薪:
  • 1000元/8小时
  • 兼职时间:
  • 下班后
  • 周六
  • 周日
  • 可工作日远程
  • 所在区域:
  • 北京
  • 海淀

技术能力

一、编程语言与基础
精通 C/C++(C++11/14/17/20、C11),深入掌握内存管理、多线程并发、模板元编程、性能优化及数据结构算法。
二、Linux系统(应用+驱动)
应用开发:精通进程/线程、IPC(管道/共享内存/信号量/Socket)、网络编程(epoll/io_uring/TCP/UDP)、动态库、性能调优(perf/ftrace/valgrind)。
驱动开发:熟悉字符设备驱动、platform驱动、设备树、中断处理、DMA、并发控制(自旋锁/互斥锁)、等待队列、常见外设(GPIO/I2C/SPI/UART/USB)、内核调试(kgdb/printk/trace)。
三、图形与跨平台框架
熟练 Qt(Widgets/QML、信号槽、模型/视图、多线程、跨平台Linux/Windows/嵌入式及Qt for MCU)。
四、OpenHarmony(南向+北向)
南向:理解内核层(Linux/LiteOS)、HDF驱动框架、系统服务定制。
北向:掌握ArkTS声明式UI,通过 Native C++(N-API) 将高性能模块以C/C++实现并暴露上层。
五、工具链
CMake/Makefile/Kconfig、GDB/strace/perf/kgdb、Git、交叉编译(arm/aarch64/riscv)。
六、适用领域
嵌入式/物联网操作系统、工业控制/车载/医疗/机器人、高性能中间件/边缘计算。
一句话总结:既能写 Linux驱动 与 OpenHarmony南向,也能做 Linux/Qt应用 与 OpenHarmony北向,具备端到端系统研发能力。

项目经验

项目一:Linux驱动开发方向
项目名称:工业级ARM平台多串口扩展驱动开发
项目描述
为某工业控制终端(基于i.MX6ULL / Allwinner 平台)开发多路UART扩展芯片(如SC16IS752、XR21V1414等)的Linux字符设备驱动程序,实现4-8路串口的高可靠数据收发,满足工业现场设备(PLC、传感器、仪表)的数据采集需求。
核心职责与技术要点
编写字符设备驱动,实现open/read/write/ioctl等文件操作接口,支持用户层通过标准串口API(termios)访问;
基于设备树(Device Tree) 描述硬件资源(中断、寄存器地址、时钟),使用platform驱动框架实现设备与驱动的匹配;
处理中断与并发:采用中断顶半部+底半部(tasklet/workqueue) 机制收数据,使用自旋锁+互斥锁保护共享资源,避免竞态;
对接TTY子系统,将驱动注册为标准的tty_driver,使应用层可沿用现有串口工具;
实现DMA模式批量数据传输,降低CPU占用率,在115200波特率下实现零丢包;使用printk、kgdb、ftrace、bpftrace进行内核调试与性能分析
项目:跨平台蓝牙调试助手(Qt + Bluetooth)
项目描述
开发一款基于Qt 5.15/6.x的跨平台蓝牙调试工具,支持Windows/Android/Linux平台,实现与蓝牙模块(如HC-05、HC-06)或蓝牙设备的数据透传通信。该项目借鉴了串口调试助手的成熟设计思路,将底层通信从QSerialPort迁移至QBluetoothSocket,实现有线到无线的无缝迁移。
核心职责与技术要点
设备发现:使用QBluetoothDeviceDiscoveryAgent扫描周围经典蓝牙设备(BR/EDR),实时显示设备名称和地址列表;
服务发现:通过QBluetoothServiceDiscoveryAgent配合UUID过滤,精准查找提供串口服务(SPP)的目标设备;
RFCOMM连接:采用QBluetoothSocket建立RFCOMM通信通道,实现与蓝牙模块的数据收发;
数据传输:提供发送/接收编辑框和十六进制/文本模式切换,支持ASCII与Hex格式互转,满足不同调试需求;
跨平台适配:处理Android平台蓝牙权限动态申请(QBluetoothPermission),一套代码编译生成Windows/Android/Linux多端应用;
UI设计:使用Qt Widgets构建简洁界面,包含设备列表、连接状态显示、收发日志区、AT指令快捷发送按钮。
项目成果
成功实现手机App与HC-05蓝牙模块的通信测试,数据收发稳定,无丢包;

案例展示

  • 跨平台蓝牙调试助手

    跨平台蓝牙调试助手

    开发一款基于Qt 5.15/6.x的跨平台蓝牙调试工具,支持Windows/Android/Linux平台,实现与蓝牙模块(如HC-05、HC-06)或蓝牙设备的数据透传通信。该项目借鉴了串口调试助手的成熟设计思路,将底层通信从QSerialPort迁移至QBluetoothSo

  • 多串口扩展驱动开发

    多串口扩展驱动开发

    编写字符设备驱动,实现open/read/write/ioctl等文件操作接口,支持用户层通过标准串口API(termios)访问; 基于设备树(Device Tree) 描述硬件资源(中断、寄存器地址、时钟),使用platform驱动框架实现设备与驱动的匹配; 处理

查看案例列表(含更多 0 个案例)

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系需求方端客服
联系需求方端客服