Zynq器件将arm和FPGA结合,利用了两者各自的优势,arm可以实现灵活的控制,而FPGA部分可以实现算法加速,这大大扩展了zynq的应用。比如深度学习加速,图像处理等等。PL侧表示FPGA的逻辑部分,PS侧为arm端以及一些AXI接口控制部分,二者实际上通过AXI接口实现通信和互联。PS可以通过AXI来对PL逻辑部分进行配置和控制,PL侧通过AXI和PS进行数据交互。本章基于zynq7020器件来搭建Linux系统,描述搭建Linux系统过程中PL侧的配置以及对u-boot,kenel,桌面系统的配置和编辑。

使用 timeout 命令,可以为运行的程序或命令设置超时时间,当程序或命令运行的时间超过设置值时,就会被 timeout 强行终止。

今天我们分享一下如何使用 timeout 命令。

首先

在GCP不同用户(的不同项目)之间,只能共享映像。不能共享实例、快照、硬盘。

环境

为了方便描述,假设:

我们要把proj1的实例转移到proj2中。

proj1的管理员是admin1,proj2的管理员是admin2。

步骤

一、在proj1中,新建映像

Linux支持中断嵌套吗?

曾经是支持的,现在已经不支持了!

在早期的Linux内核版本中,支持中断嵌套,即在一个中断服务程序(Interrupt Service Routine,ISR)中可以响应其他中断。当时,Linux内核将中断分为两种类型:快中断和慢中断。快中断申请时带IRQF_DISABLED标志,在ISR中不允许新的中断进来;慢中断申请时不带IRQF_DISABLED标志,在ISR中允许新的其他中断嵌套进来。

快中断的申请示例如下:

嵌入式开发中可能面临的问题

1 并发性问题

程序并发工作效率低在写裸机软件时,不可避免的在主程序中会有一个超级大的 while(1) 循环,这里面几乎包含整个项目的所有业务逻辑。因为每个业务逻辑里面都会有 delay 这样的循环等待函数,这样导致了所有的业务逻辑几乎都是串行起来工作的。这个时候 CPU 就会有很多时间都浪费在了延时函数里,一直在空转,导致软件的并发效率非常差。