摘要:
一、 应用场景 对于部分软件,不想被别人白嫖,只有在获取到授权后才能使用,常用的方法无非两种,其一是软件认证,其二是硬件绑定。 软件认证:顾名思义就是在软件层面的一种认证手段,常用的方法就是注册账号设置密码。只要账号密码正确,在任何设备上都可使用。 硬件绑定:就是将软件和硬件设备进行捆绑,也就是说一 阅读全文
摘要:
一、功能简介 Boot程序主要功能就是系统各方面的初始化,主要包含如下几方面。 1、 设置CPU模式 在ARM体系中CPU工作模式主要分为7种,分别是: (1) 用户模式(usr,User Mode):ARM处理器正常的程序执行状态。 (2) 快速中断模式(fiq,Fast Interrupt Re 阅读全文
摘要:
一、定义 看门狗,又叫watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog/service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT清零,如果超过规定的时间不喂狗(一般在程序跑飞 阅读全文
摘要:
一、创建代码工程 创建一个生成动态库的空工程。 工程属性配置 1、 配置体调试信息 将D:\Program Files\IDA 7.2\ida64.exe添加到配置属性\命令(注*此处配置是为了调试方便) 2、添加SDK路径 将IDASDK 的include、module的路径添加到配置属性\C/C 阅读全文
摘要:
简介: 该程序基于VS2012+QT5平台编写的定时重启指定程序的一个工具。主要用到的上QProcess功能。QProcess可用于完成启动外部程序,并与之交互通信。 一、启动外部程序的两种方式 1)一体式:void QProcess::start(const QString & program,c 阅读全文
摘要:
AES算法简介 AES的全称是Advanced Encryption Standard,意思是高级加密标准。 AES密码分组大小和密钥大小可以为128位、192位和256位。然而AES只要求分组大小为128位。本文只对分组大小128位,密钥长度也为128位的Rijndael算法进行分析。密钥长度为1 阅读全文
摘要:
为了实现Windows主机与Linux服务器之间的资源共享,Linux操作系统提供了Samba服务,Samba服务为两种不同的操作系统架起了一座桥梁,使Linux系统和Windows系统之间能够实现互相通信。 1、服务查询 默认情况下,Linux系统在默认安装中已经安装了Samba服务包的一部分 , 阅读全文
摘要:
概述 Linux内核启动流程根据是否与体系结构相关主要可分为两个阶段。第一阶段:引导过程 ==> 系统上电 > CPU自身初始化 BIOS > 加电自检 > 加载内核引导程序 内核引导程序 > 主引导程序 > 次引导程序 > 调用内核 1、CPU自身初始化 CPU 自身的初始化是引导过程的第一步,如 阅读全文
摘要:
一、定义 若一个对象部分的包含它自己,或用自己来定义自己,则称为这个对象是递归的。 二、应用原则 1、基本条件:递归过程必须一直存在至少一个不使用递归方法解决的条件。 2、进行方向:任何递归调用都必须向着“基本条件”的方向进行。 3、正确假设:总是假设递归调用时有效的。 4、适度原则:避免使用过多的 阅读全文
摘要:
一、基本概念 树是一种简单的非线性结构,所有元素之间具有明显的层次特性。在树结构中,每一个结点只有一个前驱节点,称为父结点,没有前驱节点的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后继节点,称为该结点的子结点。没有后继节点的结点称为叶子结点。在树结构中,一个结点所拥有的后件的个数 阅读全文