精彩博客

Flash Dump技术解析

一、Flash Dump技术概述 固件指嵌入在硬件设备中的软件,固件分析是分析IoT设备软件层面安全性的主要手段。随着物联网安全得到重视,越来越多的厂商选择发布加密的固件升级包。这种改变让安全研究者也越来越难以从升级包中直接提取固件。安全研究者们因此将目光转向设备本身,尝试从设备中直接提取固件。 从设备中提取固件的方式有很多,比如找到串口,通过uboot命令dump固件,甚至直接通过硬件调试口读取固件。但这些基于串口、...

05/31 21:37
513
0
不懂键盘原理的键盘侠不是好键盘侠

键盘,咱们做计算机这一行的自然不必多说,天天与它打交道。但熟归熟,清楚键盘背后的原理吗?键盘上都标有各键的名称,表明了各键所代表的意义,但是计算机是如何知道的?组合键是怎样实现的?按下一个代表字符的键,怎么变成平常使用的ASCII码的? 看完本文,相信你就能了解键盘的本质,知晓这些问题答案。 ## 一、相关介绍 ### 键盘编码器 键盘编码器(i8048),是键盘里的芯片,主要用来监控是否有键按下,弹起,然后向键盘控...

05/08 10:41
772
1
干货|树莓派4B 搭建 OpenVINO 环境

点击蓝字 关注我们,让开发变得更有趣 内 容 来 源 | 牛宝华 内 容 排 版 | 卢蔷薇 01 环境介绍 硬件: 树莓派4B 8G内存版 神经计算棒(NCS2) USB3.0 的读卡器 64GB SD卡 HDMI线(因为要连接显示器) 键盘(USB接口,连接树莓派用) 软件: Ubuntu20.04 OpenVINO 2021.3 Raspberry Pi Imager(用于烧录系统) 任意命令行工具(我用的是Windows Terminal) 02 安装操作系统 1. 从官网下载Ubuntu系统镜像 [Install Ubuntu on a Ras...

05/18 17:10
928
0
EMQ X v4.3 正式发布:性能大幅提升,更好用的多语言扩展

[连接海量物联网设备的 MQTT 消息服务器 - EMQ X](https://www.emqx.cn/products/broker) 是基于高并发的 Erlang/OTP 语言平台开发,支持百万级连接和分布式集群架构。EMQ X 已经在全球物联网市场广泛应用,无论是产品原型设计、物联网创业公司、还是大规模的商业部署,都支持免费使用。 产品介绍:[https://www.emqx.cn/products/broker](https://www.emqx.cn/products/broker) 下载地址:[https://www.emqx.cn/downloads#brok...

05/14 17:04
2.6K
0
LiteOS内核源码分析:静态内存Static Memory

摘要:本文带领大家一起剖析了LiteOS静态内存模块的源代码,包含静态内存的结构体、静态内存池初始化、静态内存申请、释放、清除内容等。 本文分享自华为云社区《LiteOS内核源码分析系列十二 静态内存Static Memory》,原文作者:zhushy 。 内存管理模块管理系统的内存资源,它是操作系统的核心模块之一,主要包括内存的初始化、分配以及释放。 在系统运行过程中,内存管理模块通过对内存的申请/释放来管理用户和OS对内存的使用...

05/06 11:39
1.6K
0
爱快路由器支持Docker后,如何用YoMo框架写“边缘原生”物联网应用

![](https://oscimg.oschina.net/oscnet/up-3644df9868d3fd8ff0c6d386f11958f86df.JPEG) 传统的大型物联网IoT架构经过十几年的发展,形成了“先落盘、再计算”的定式: ![](https://oscimg.oschina.net/oscnet/up-5073fcec34732dad1a5ea9afa25a29fa3ac.png) 再看今天计算架构的基础设施:云计算带来了更高的计算强度、5G和全光网络引入了确定性时延和超大带宽、CDN和云原生已支持计算能力向城镇级分发。现在,自动驾驶、数字孪生...

05/01 07:52
2.2K
1
物联网边缘原生:应用YoMo开发噪声传感器采集监控系统

## 前言 这个例子描述 [YoMo](https://github.com/yomorun/yomo) 在物联网数据采集中的应用,以噪声传感器数据的实时计算和存储为例,涉及数据收集/处理/工作流/数据展示的全过程,为了便于体验运行效果,还会对其进行容器化,并通过docker快速部署体验版。 ## 述语 - xxx-source: 表示一个数据源收集程序 - xxx-zipper: 表示一个工作流和控制平面 - xxx-flow: 表示一个工作流单元,用于实际的业务逻辑处理,被zipper调度。 - ...

05/01 07:06
1.8W
3
优化技术专题-底层架构原理系列-这绝对是你的知识盲点,NUMA的为什么存在

# NUMA的产生背景 > **在NUMA架构出现前,CPU欢快的朝着频率越来越高的方向发展(纵向发展)。受到物理极限的挑战**,**又转为核数越来越多的方向发展(横向发展)**。在一开始,内存控制器还在**北桥**中,所有CPU对内存的访问都要通过**北桥**来完成。此时所**有CPU访问内存都是“一致的”**,如下图所示: ![](https://oscimg.oschina.net/oscnet/up-7bebda7d29086fd90626883358dace57534.png) >**这样的架构称为UMA(Uniform...

04/29 11:30
2K
1
看从小自带BUFF的他,如何用代码降低万物互联的门槛

摘要:3岁下象棋,5岁解方程!他说物联网开发就像打怪玩游戏 本文分享自华为云社区《HDC.Cloud2021 | 华为云IoT开发者:用代码降低万物互联的门槛》,原文作者:华为云头条 。 3岁能跟父亲下象棋、5岁能解二元一次方程组、7岁上完一年小学就升初中……1997年出生的张小俭,似乎是一个从小自带BUFF的“领跑者”。 开发就像玩游戏,挑战永无止境 张小俭从小就喜欢学习和探索,他的数理逻辑能力非常好,所以高考时选择了当时最热门...

04/26 11:15
3.9K
0
LiteOS内核源码分析:消息队列Queue

摘要:本文通过分析LiteOS队列模块的源码,掌握队列使用上的差异。 本文分享自华为云社区《LiteOS内核源码分析系列十 消息队列Queue》,原文作者:zhushy 。 队列(Queue)是一种常用于任务间通信的数据结构。任务能够从队列里面读取消息,当队列中的消息为空时,挂起读取任务;当队列中有新消息时,挂起的读取任务被唤醒并处理新消息。任务也能够往队列里写入消息,当队列已经写满消息时,挂起写入任务;当队列中有空闲消息节点...

04/21 10:58
4.5K
0
RT-Thread 内核学习笔记 - 设备模型rt_device的理解

RT-Thread 内核学习笔记 - 内核对象rt_object RT-Thread 内核学习笔记 - 内核对象管理 RT-Thread 内核学习笔记 - 内核对象操作API RT-Thread 内核学习笔记 - 内核对象初始化链表组织方式 RT-Thread 内核学习笔记 - 内核对象链表结构深入理解 RT-Thread 内核学习笔记 - 设备模型rt_device的理解 RT-Thread 内核学习笔记 - 理解defunct僵尸线程 前言 最近在看内核源码,暂时避开费脑力的任务调度、内存管理等较复杂的实现方法,发...

04/19 11:31
2.1K
0
RT-Thread 内核学习笔记 - 内核对象操作API

RT-Thread 内核学习笔记 - 内核对象rt_object RT-Thread 内核学习笔记 - 内核对象管理 RT-Thread 内核学习笔记 - 内核对象操作API RT-Thread 内核学习笔记 - 内核对象初始化链表组织方式 RT-Thread 内核学习笔记 - 内核对象链表结构深入理解 RT-Thread 内核学习笔记 - 设备模型rt_device的理解 RT-Thread 内核学习笔记 - 理解defunct僵尸线程 背景 目的还是学习并熟悉RT-Thread 操作系统。 从最简单的对象管理切入 了解操作系统...

04/13 10:18
664
0
一文带你剖析LiteOS互斥锁Mutex源代码

摘要:多任务环境下会存在多个任务访问同一公共资源的场景,而有些公共资源是非共享的临界资源,只能被独占使用。LiteOS使用互斥锁来避免这种冲突,互斥锁是一种特殊的二值性信号量,用于实现对临界资源的独占式处理。 本文分享自华为云社区《LiteOS内核源码分析系列七 互斥锁Mutex》,原文作者:zhushy。 多任务环境下会存在多个任务访问同一公共资源的场景,而有些公共资源是非共享的临界资源,只能被独占使用。LiteOS使用互斥...

04/12 10:57
1.1K
0
LiteOS内核源码分析:任务LOS_Schedule

摘要:调度,Schedule也称为Dispatch,是操作系统的一个重要模块,它负责选择系统要处理的下一个任务。调度模块需要协调处于就绪状态的任务对资源的竞争,按优先级策略从就绪队列中获取高优先级的任务,给予资源使用权。 本文分享自华为云社区《LiteOS内核源码分析系列六 -任务及调度(5)-任务LOS_Schedule》,原文作者:zhushy 。 本文我们来一起学习下LiteOS调度模块的源代码,文中所涉及的源代码, 均可以在LiteOS开源站点h...

04/06 10:26
1.5K
0
LiteOS内核源码分析:任务栈信息

摘要:LiteOS任务栈是高地址向低地址生长的递减栈,栈指针指向即将入栈的元素位置。 本文分享自华为云社区《LiteOS内核源码分析系列六 -任务及调度(2)-任务LOS_Task》,原文作者:zhushy 。 我们介绍下LiteOS任务栈的基础概念。LiteOS任务栈是高地址向低地址生长的递减栈,栈指针指向即将入栈的元素位置。初始化后未使用过的栈空间初始化的内容为宏OS_STACK_INIT代表的数值0xCACACACA,栈顶初始化为宏OS_STACK_MAGIC_WORD代表...

04/01 11:24
1.7K
0
关于IoT安全,20位大厂CSO这样说……

智能扫地机器人、联网的咖啡机、可以远程控制的汽车……随着越来越多的物联网(IoT)设备走进消费者身边,万物互联渐成现实。在给消费者带来便利的同时, IoT设备等安全和隐私问题也引发了广泛关切。不止是在消费场景,工业、农业、能源、零售等等众多关系到国计民生的领域,物联网也作为重要的数字化工具,正在加速落地。同样需要关注的是,IoT设备一旦联网,安全风险也将随之而来,企业的生产运营、品牌声誉都将面临更严峻的挑...

03/31 14:06
1.4K
0
聊聊LiteOS中生成的Bin、HEX、ELF三种文件格式

摘要:我们在使用编译器在编译工程后会要求生成可执行文件,将这些文件烧录到MCU进行运行,达到我们测试和使用程序的目的,再使用工具链进行编译的时候往往生成.bin、.hex 、.elf 、.alf等文件,这些文件有什么区别呢?可以互相转换吗?LiteOS 有哪些可执行文件呢?本文意义进行阐述。 本文分享自华为云社区《LiteOS 下载到MCU中的三种文件格式Bin、HEX、ELF》,原文作者:o0龙龙0o。 我们在使用编译器在编译工程后会要求生成可...

03/26 09:49
2.5K
0
LiteOS内核源码分析:位操作模块

摘要:本文带领大家一起剖析了LiteOS位操作模块的源代码,代码非常简单,参考官方示例程序代码,实际编译运行一下,加深理解。 本文分享自华为云社区《LiteOS内核源码分析系列五 LiteOS内核源码分析--位操作模块》,原文作者:zhushy 。 在进一步分析之前,本文我们先来熟悉下LiteOS提供的辅助功能模块–位操作,在互斥锁等模块对位操作有使用。位操作是指对二进制数的bit位进行操作。程序可以设置某一变量为状态字,状态字中的...

03/23 10:05
2.3K
0
LiteOS:剖析时间管理模块源代码

摘要:Huawei LiteOS的时间管理模块以系统时钟为基础,分为2部分,一部分是SysTick中断,为任务调度提供必要的时钟节拍;另外一部分是,给应用程序提供所有和时间有关的服务,如时间转换、统计、延迟功能。 本文分享自华为云社区《LiteOS内核源码分析系列四 LiteOS内核源码分析--时间管理》,原文作者:zhushy 。 Huawei LiteOS的时间管理模块以系统时钟为基础,可以分为2部分,一部分是SysTick中断,为任务调度提供必要的时钟节...

03/22 10:17
1.7K
0
开源硬件开发简介

本文翻译自作者 Mohamed A. Salem 和 Jamil I. Khatib 的文章 An introduction to open-source hardware development 本文介绍了硬件设计与开发开源硬件的新趋势。它定义了开源硬件设计的术语、特点和要求。它介绍了基于 FPGA 的平台是最适合开源设计实现的。它还讨论了开源硬件的商业模式。 介绍和动机 开源软件已经成为软件开发过程中的重要组成部分。通过硬件与软件的类比,因此也可以考虑开源硬件。HDL 类似于传统的软件编程...

03/18 18:54
1.2W
1

没有更多内容

加载失败,请刷新页面

百度C++工程师的那些极限优化(并发篇)

导读:对于工程经验比较丰富的同学,并发应该也并不是陌生的概念了,但是每个人所理解的并发问题,却又往往并不统一,本文系统梳理了百度C++工程师在进行并发优化时所作的工作。 全文15706字...

昨天 14:22
3.7K
1
初窥鸿蒙

一、什么是鸿蒙 鸿蒙即 HarmonyOS ,是华为公司推出的支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备的分布式操作系统,并且它提供了多语言开发的 API,支持 Java、XML、C/C++、JS、...

06/10 18:21
1.6W
6
深入浅出聊聊 Rust WebAssembly(一)

什么是 webassembly 在 2019 年 12 月之前,如果你要编写一个web页面,那一定离不开 html、css、js 这三个好兄弟。在 2019 年 12 月之后 W3C 宣布 webassembly 加入了他们。为什么要在三兄弟...

06/10 10:55
1.4W
3
一文教会你认识Vuex状态机

摘要:简单来说,Vuex就是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间数据的共享。 本文分享自华为云社区《Vuex状态机快速了解与应用》,原文作者:北极光之夜。 一. 速识...

06/09 10:02
1.5W
4
V8 执行 JavaScript 的过程

👆 这是第 102 篇不掺水的原创,想要了解更多,请戳上方蓝色字体:政采云前端团队 关注我们吧~ 本文首发于政采云前端团队博客:V8 执行 JavaScript 的过程 https://www.zoo.team/article...

06/08 21:30
7.9K
4
读写分离水太深,你把握不住,让CQRS来

多年以前,那时我正年轻,做技术如鱼得水,甚至一度希望自己能当一辈子的一线程序员。 但是我又有两个小愿望想要达成:一个是想多挣点钱;另一个就是对项目的技术栈和架构选型能多有点主动权...

06/08 14:07
2.6W
13
Go timer 是如何被调度的?

hi,大家好,我是 haohongfan。 本篇文章剖析下 Go 定时器的相关内容。定时器不管是业务开发,还是基础架构开发,都是绕不过去的存在,由此可见定时器的重要程度。 我们不管用 NewTimer, ti...

06/08 08:37
7.2K
0
深入浅出协程、线程和并发问题

"协程是轻量级的线程",相信大家不止一次听到这种说法。但是您真的理解其中的含义吗?恐怕答案是否定的。接下来的内容会告诉大家协程是如何在 Android 运行时中被运行的,它们和线程之间的关...

06/03 11:44
1.9W
0
深入解析 Raft 模块在 ZNBase 中的优化改造(下)

作者:管延信 上期回顾:深入解析 Raft 模块在 ZNBase 中的优化改造(上) 导读 云溪数据库 ZNBase 是由浪潮开源的一款 NewSQL 分布式数据库,具备 HTAP 特性,拥有强一致、高可用的分布式架...

05/31 11:03
5.5K
8
浅析扣减库存的方案设计

你好,我是悟空,今天来探讨下扣减库存的方案。 生活中,我们总是用各种电商app抢购商品,但是库存数是很少的,特别是秒杀场景,商品可能就一件,那如何保证不会出现超卖的情况呢? 一、扣减...

05/28 15:01
2.2W
3
HTAP 数据库如何实现?浅析 ZNBase 中的列存引擎

作者:马静伟 编辑:大东BE 导读 TP 与 AP 融合的 HTAP 数据库正成为业内的发展趋势。但由于大规模数据场景下 TP 与 AP 系统本身的复杂性,要在一套数据库系统中融合两种使用场景的功能并不容...

05/28 14:03
8.6K
18
高德Serverless平台建设及实践

导读 高德启动Serverless建设已经有段时间了,目前高德Serverless业务的峰值早已超过十万QPS量级,平台从0到1,QPS从零到超过十万,成为阿里集团内Serverless应用落地规模最大的BU。这个过程...

05/28 12:10
1.4W
1
从源码出发看zgc的技术内幕

笔者经过上次对zgc在不同环境下进行的测试后,发现zgc所带来的提升非常之大。一时间对zgc在生产中使用充满信心,但是在全面使用之前,难免对其几大新特性有一些好奇,比如:染色指针,读屏障...

05/27 16:38
2W
13
拯救祭天的程序员——事件溯源模式

一、事前 你相信吗?曾经有一段日子,我几乎没接到过合格的产品需求。 开局几句话,技术全靠猜。 总是以为简单的需求 曾经,我从产品那里接到过这么一个需求: 对系统的用户进行分级,不同级别...

05/27 12:54
2.3W
8
React 事件系统是如何工作的?

一、DOM 事件流 在浏览器中,我们通过事件监听来实现 JS 和 HTML 之间的交互。一个页面往往会被绑定许许多多的事件,而页面接收事件的顺序,就是事件流。它类似于蹦床,从高处下落,触达蹦床...

05/24 19:25
1.2W
5
懂得取舍才是缓存设计的真谛

Previously 前两篇文章(缓存稳定性 和 缓存正确性)跟大家讨论了缓存的『稳定性』和『正确性』,缓存常见问题还剩下『可观测性』和『规范落地&工具建设』 稳定性 正确性 可观测性 规范落地和...

05/24 09:00
1.5W
1
提效 7 倍,Apache Spark 自适应查询优化在网易的深度实践及改进

本文基于 Apahce Spark 3.1.1 版本,讲述 AQE 自适应查询优化的原理,以及网易数帆在 AQE 实践中遇到的痛点和做出的思考。 前言 自适应查询优化(Adaptive Query Execution, AQE) 是 Spark 3....

05/21 10:47
1.2W
0
一起看 I/O | Android 更新一览

作者 / Karen Ng, Director, Product Management & Jacob Lehrbaum, Director of Developer Relations, Android & Play 作为 Android 开发者,我们致力于打造让世界各地的用户们满意的体验。...

05/20 19:06
3.5K
0
低代码平台如何一步步摧毁开发团队的效率与创新!

关于低代码平台,之前我也推送过两篇相关的文章,我的观点很简单:东西是好的,有它所擅长和适用的领域,但软件产品不存在银弹,低代码平台一样如此! 现在在搜索引擎上搜“低代码”这样的关...

05/14 10:26
4.1W
15
CSP浅析与绕过

XSS是最常见、危害最大的网页安全漏洞,想要抵御它们,要采取非常多编程措施,非常麻烦。那么,有没有可以从根本上解决问题,浏览器自动禁止外部注入恶意脚本的方法呢?CSP应运而生。 本文涉...

05/13 17:03
5K
2

没有更多内容

加载失败,请刷新页面

返回顶部
顶部