当前位置: 首页 > article >正文

RISCV下Dovetail移植(2)——原子操作

Dovetail将Linux中的中断全部虚拟化,来实现无论何时都能被中断以提供evl的实时性。在这种中断保护被虚拟化的情况下,需要在所有需要中断禁用以序列化调用者的地方,反转这种虚拟化效果。通常,以下文件会受到影响:

  • include/asm-generic/atomic.h
  • include/asm-generic/cmpxchg-local.h
  • include/asm-generic/cmpxchg.h

同样,在架构特定的代码中,也可能存在以下文件:

  • arch/arm/include/asm/atomic.h
  • arch/arm/include/asm/bitops.h
  • arch/arm/include/asm/cmpxchg.h

但riscv提供amo指令,AMO 指令能够在一个指令中完成读取、修改和写回操作,这些操作是不可分割的,不会被中断或重新排序,因此并不需要修改中断。


http://www.kler.cn/a/572758.html

相关文章:

  • TikTok矩阵系统介绍
  • 特辣的海藻!8
  • @PostConstruct注解的作用
  • 【前端学习笔记】Git 原理及面试题
  • 用本地浏览器打开服务器上使用的Tensorboard
  • 自学微信小程序的第十三天
  • 【Spring Boot 应用开发】-04-02 自动配置-数据源-手撸一个最简持久层工具类
  • 驱动开发系列43 - Linux 显卡KMD驱动代码分析(四)- DRM设备操作
  • Golang的数据库分库分表
  • 【网络安全】API安全防护完整指南
  • 【计算机网络入门】TCP拥塞控制
  • OpenGL ES -> GLSurfaceView纹理贴图
  • 词向量(Word Embedding)
  • 【SegRNN 源码理解】图示理解 forward的过程
  • 使用 marked.min.js 实现 Markdown 编辑器 —— 我的博客后台选择之旅
  • MySQL8 忘记密码
  • 【金融量化】Ptrade中交易环境支持的业务类型
  • Mysql命令大全(连接Mysql)
  • 单体架构、集群、分布式、微服务的区别!
  • Web服务器配置