自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

每天进步一点

成功的路上不是那么的容易,只有不断地积累。fighting----骚年

  • 博客(18)
  • 收藏
  • 关注

原创 Trustzone 硬件架构

1. 用于ARMv8-A / ARMv7-A / ARMv6Z的ARM TrustZone 基本介绍TrustZone技术为全系统的安全性和可信赖平台的创建提供了基础。系统的任何部分都可以设计为安全的世界的一部分,包括调试,外设,中断和内存。通过创建安全子系统,资产可以免受软件攻击和普通硬件攻击。这两个世界的划分是通过AMBA总线结构,外围设备和处理器中存在的硬件逻辑实现的。每个物理处理器内核都有两

2017-06-13 16:00:58 4883

原创 1. arm-trusted-firmware (ATF介绍)

1. 大致描述ATF提供了安全世界的参考实现软件[ARMv8-A],包括执行的 [Secure Monitor] [TEE-SMC]异常级别 3(EL3)。它实现了各种 ARM 接口标准,如电源状态协调接口([PSCI]),可信板启动要求(TBBR,ARM DEN0006C-1)和[SMC 呼叫公约] [SMCCC]。尽可能代码旨在重用或移植到其他 ARMv8-A 型号和硬件平台。2. 功能

2017-06-07 10:48:59 30591 2

原创 ATF EL3 Runtime Service

1. 介绍 什么叫运行时服务了?干了写啥?下面听我慢慢道来. 在正常世界和安全世界中执行的软件低于EL3的级别将使用安全监视器请求运行时服务呼叫(SMC)指令。 运行时服务的接口和操作在很大程度上取决于[SMCCC]中描述的概念和定义,特别是SMC功能ID,所有实体号码(OEN),快速和标准呼叫以及SMC32和SMC64调用约定。常见的运行时服务框架确保将SMC功能调度到其各自

2017-06-06 17:08:40 2436

原创 ATF(EL3级别运行环境初始化)

El3 级别运行环境初始化定义在 include/commom/aarch64/el3_common_macros.S文件中 .macro el3_entrypoint_common \ _set_endian, _warm_boot_mailbox, _secondary_cold_boot, \ _init_memor

2017-06-05 11:10:40 4526

转载 虚拟地址与物理地址的概念

虚拟地址和物理地址的概念 CPU通过地址来访问内存中的单元,地址有虚拟地址和物理地址之分,如果CPU没有MMU(Memory Management Unit,内存管理单元),或者有MMU但没有启用,CPU核在取指令或访问内存时发出的地址将直接传到CPU芯片的外部地址引脚上,直接被内存芯片(以下称为物理内存,以便与虚拟内存区分)接收,这称为物理地址(Physical Address,以下简

2016-12-13 21:26:57 747

转载 linux内核模块怎么编译——Makefile解析

Linux内核是一种单体内核,但是通过动态加载模块的方式,使它的开发非常灵活 方便。那么,它是如何编译内核的呢?我们可以通过分析它的Makefile入手。以下是 一个简单的hello内核模块的Makefile. ifneq ($(KERNELRELEASE),)obj-m:=hello.oelseKERNELDIR:=/lib/modules/$(shell uname -r)/buildP

2016-11-17 09:40:46 1327

原创 Qt 类简介之---QApplication 类

一、详细描述 QApplication 类管理图形用户界面应用程序的控制流和主要设置。 可以说 QApplication是Qt的整个后台管理的命脉 它包含主事件循环,在其中来自窗口系统和其它资源的所有事件被处理和调度。它也处理应用程序的初始化和结束,并且提供对话管理。它也处理绝大多数系统范围和应用程序范围的设置。 对于任何一个使用Qt的图形用户界面应用程序,都正好存在一个QApplicatio

2016-01-21 19:12:32 4230

原创 C++的运算符重载

运算符重载是通过创建运算符函数实现的,运算符函数定义了重载的运算符将要进行的操作。运算符函数的定义与其他函数的定义类似,惟一的区别是运算符函数的函数名是由关键字operator和其后要重载的运算符符号构成的。运算符函数定义的一般格式如下:注意: (1) 除了类属关系运算符”.”、成员指针运算符”.*”、作用域运算符”::”、sizeof运算符和三目运算符”?:”以外,C++中的所有运算符都可以重载

2016-01-19 20:17:23 327

原创 浅谈拷贝构造函数

拷贝构造函数,又称复制构造函数,是一种特殊的构造函数,它由编译器调用来完成一些基于同一类的其他对象的构建及初始化。其唯一的形参必须是引用,但并不限制为const,一般普遍的会加上const限制。此函数经常用在函数调用时用户定义类型的值传递及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。如果可以的话,它将用常量方式调用,另外,也可以用非常量方式调用。调用拷贝构造函数的情形在C++中,下面三种对

2016-01-19 20:05:01 374

原创 标准文件IO以及scanf fgets gets 以及printf sprintf fprintf的区别

fopen, - stream open functionsFILE *fopen(const char *path, const char *mode); path: 要打开的文件名(带路径), 普通文件(文本文件,二进制文件) mode: 指向一个字符串。打开文件的方式: “r” : 只读方式打开。

2016-01-15 19:17:02 843

原创 libjpeg的移植

libjpeg是什么东西? libjpeg是一个开源源码包,功能是图片格式之间的相互转换。 compress decompress 移植步骤: 1. 解压源码   (不要解压到共享目录中去, 共享文件是windows下面的目录, 那个目录不支持linux的链接文件)tar zxvf jpegsrc.v8a.tar.gz交叉编译

2016-01-15 17:54:13 643

原创 操作帧缓冲设备--LCD的操作

Linux Frame Buffer 帧缓冲设备是对具体的图像硬件的一个抽象,它让上层图像应用不必关心具体的硬件实现细节。 分辨率 像素点:pixel显示某种颜色的点 LCD显示原理: 屏由y行且每行x个像素点的矩阵组成;在屏幕上显示图像,就是给每个像素点显示一种颜色。 颜色值,可以量化。 于是,有人就提出在内存中( 显存)开辟一

2016-01-15 17:42:12 716

原创 利用开源库libjpeg库解析jpeg格式图片

利用libjpeg库解压jpeg文件的步骤:1. 分配并初始化一个jpeg解压对象```struct jpeg_decompress_struct dinfo; //定义了一个jpeg的解压对象struct jpeg_error_mgr jerr; //定义一个错误变量dinfo.err = jpeg_std_error(&jerr);jpeg_create_decompress(&dinfo)

2016-01-15 16:25:38 3359

原创 s5pv210烧写系统镜像步骤

用到的工具:DNW minicom 用到的文件:gec210_usb.bin gec210_uboot.bin fastboot.rar USB driver gec_android_driver Donwload Adresss说明:  0xd0020010为gec210_usb.bin文件下载地址,该文件初始化210处理里的相关寄存器;  0x23e00000

2016-01-15 13:34:08 2353

原创 测试一台电脑的存储是大端模式还是小端模式

常见面试题:用union的方法: 介绍下union: union (共用声明和共用一变量定义) “联合”是一种特殊的类,也是一种构造类型的数据结构。在一个“联合”内可以定义多种不同的数据类型, 一个被说明为该“联合”类型的变量中,允许装入该“联合”所定义的任何一种数据,这些数据共享同一段内存,以达到节省空间的目的(还有一个节省空间的类型:位域)。 这是一个非常特殊的地方,也是联合的特征。另外

2016-01-15 13:01:35 655

原创 ubuntu常见服务器的搭建

常用服务 samba: sudo apt-get install samba Samba 服务器: 启动 sudo service smbd start 重启 sudo service smbd restart 停止 sudo service smbd stop配置文件:sudo vim /etc/samba/smb.conf 增加

2016-01-15 10:16:21 493

原创 sqlite3常用的c语言函数接口

sqlite3_open: 用来打开或创建一个sqlite3数据库引擎的连接 在sqlite3数据库引擎中,用结构体sqlite3来表示 sqlite3的数据库引擎 的连接。 我们在调用sqlite3_open这个函数时,它会给我们创建一个sqlite3数据库引擎的连接。int sqlite3_open( const char *filename, //database

2016-01-15 09:31:48 1370

原创 sqlite3以及sql的简单介绍

数据库的介绍(sqlite)sqlite是一个小型的嵌入式数据库,属于关系型的数据库。数据库关系型数据库 是由多个数据库表(二维表)组成.E-R模型 建立二维表,范式, ...**数据库表** 二维表(多行多列组成) 行: 一个实体, 记录(record) 列: 字段(field), 由具有相同数据类型或属性组成, 一个实体由多个属性(

2016-01-15 08:43:54 672

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除