- 博客(174)
- 收藏
- 关注
原创 Android学习记录
2020.7.29一篇文章看明白 Android 系统启动时都干了什么https://blog.csdn.net/freekiteyu/article/details/79175010一篇文章了解相见恨晚的 Android Binder 进程间通讯机制https://blog.csdn.net/freekiteyu/article/details/70082302android graphic(1)—轮廓https://blog.csdn.net/lewif/article/details/
2020-07-29 22:25:37 286
转载 MAC地址表、ARP表和路由表详解
一:MAC地址表详解说到MAC地址表,就不得不说一下交换机的工作原理了,因为交换机是根据MAC地址表转发数据帧的。在交换机中有一张记录着局域网主机MAC地址与交换机接口的对应关系的表,交换机就是根据这张表负责将数据帧传输到指定的主机上的。交换机的工作原理交换机在接收到数据帧以后,首先、会记录数据帧中的源MAC地址和对应的接口到MAC表中,接着、会检查自己的MAC表中是否有数据帧中目标MAC地址的信...
2018-02-20 09:26:30 22783 4
原创 第3章 程序的机器级表示
3.12 存储器的越界引用和缓冲区溢出寄存器参考:http://blog.csdn.net/genius_lg/article/details/38054343对抗缓冲区溢出攻击1. 栈随机化2. 栈破坏检测3.限制可执行代码区域3.13 x86-64:将IA32扩展到64位3.13.2 x86-64简介
2016-10-21 10:16:12 497
原创 第2章 信息的表示和处理
2.1 信息存储2.1.2 字更正:虚拟地址的范围为0~(2^w - 1)2.1.3 数据大小备注:准确的字节数依赖于机器和编译器,详细请参考:http://blog.csdn.net/genius_lg/article/details/177971932.1.4 寻址和字节顺序大端法:高位存储在低字节(IBM、SUN)小端法:高位存储在高字节(Intel)
2016-10-21 10:14:34 379
原创 第1章 计算机系统漫游
1.2 程序被其他程序翻译成不同的格式1.3 了解编译系统如何工作是大有益处的1.4 处理器读并解释存储在存储器中的指令1.4.1 系统的硬件组成1.4.2 运行hello程序1.5 高速缓存至关重要1.6 存储设备形成层次结构1.7 操作系统管理硬件0x08048000: 128M
2016-10-21 07:38:06 435
原创 参考链接
加密算法相关SSH技术白皮书http://www.h3c.com.cn/products___technology/technology/security_encrypt/other_technology/technology_book/200805/606213_30003_0.htm浅谈MD5加密算法中的加盐值(SALT)http://www.ithao123.cn/c
2015-08-28 17:01:27 793
转载 AES加密模式和填充模式
模式说明:算法/模式/填充 16字节加密后数据长度 不满16字节加密后长度AES/CBC/NoPadding 16 不支持AES/CBC/PKCS5Padding 32 16AES/CBC/ISO1
2015-08-26 16:09:32 8076
转载 Android Studio轻松上手指南
【51CTO译文】Android Studio是一套面世时间还不长的IDE(即集成开发环境),目前已经免费向谷歌及Android的开发人员发放。Android Studio以IntelliJ IDEA为基础,后者同样是一套相当出色的Android开发环境。在今天的文章中,我们将共同了解如何创建一个全新Android项目,同时充分发挥Android Studio所提供的各项功能优势。1.
2015-08-09 10:49:22 642
转载 linux 设置环境变量的方法
现在使用linux的朋友越来越多了,在linux下做开发首先就是需要配置环境变量,下面以配置java环境变量为例介绍三种配置环境变量的方法。 修改/etc/profile文件如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。 (1)用文本编辑器打开/etc/profile (2)在profile
2015-07-01 08:00:05 448
转载 linux expr命令参数及用法
http://www.linuxso.com/command/expr.htmlhttp://baike.baidu.com/item/expr
2015-06-30 18:06:18 660
原创 linux shell字符串操作
基本操作表达式含义${#string}$string的长度${string:position}在$string中, 从位置$position开始提取子串${string:position:length}在$string中, 从位置$position开始提取长度为$length的子串${string#substr
2015-06-30 10:14:16 542
原创 【操作】windows添加路由
【添加到网段的路由】从IP地址为192.168.72.XXX的windows服务器上,添加到192.168.70.0网段的路由。执行如下命令失败,提示命令参数错误:route add 192.168.70.0 mask 255.255.240.0 192.168.72.254执行如下命令成功:route add 192.168.70.0/20 192.168.72.254
2015-06-05 11:55:44 2169
转载 c语言中return与exit的区别
1,exit用于在程序运行的过程中随时结束程序,exit的参数是返回给OS的。main函数结束时也会隐式地调用exit函数。exit函数运行时首先会执行由atexit()函数登记的函数,然后会做一些自身的清理工作,同时刷新所有输出流、关闭所有打开的流并且关闭通过标准I/O函数tmpfile()创建的临时文件。exit是结束一个进程,它将删除进程使用的内存空间,同时把错误信息返回父进程,而retur
2015-04-08 18:32:52 655
转载 指针数组做函数形参
应用场景从程序设计角度来看,将多个字符串传递给函数处理时,因为传递的是一维数组,形参的定义比较简单。例如,函数strsort()可对多个字符串进行排序,函数头的定义形式如下:void strsort(char *s[],int n)形参char *s[]为字符指针数组,将要处理的指针数组的首地址作为实参传入。形参int n表示要处理的字符串的数量。应用举例C/C+
2015-04-08 15:57:41 4897
转载 函数调用过程探究
引言如何定义函数、调用函数,是每个程序员学习编程的入门课。调用函数(caller)向被调函数(callee)传入参数,被调函数返回结果,看似简单的过程,其实CPU和系统内核在背后做了很多工作。下面我们通过反汇编工具,来看函数调用的底层实现。 基础知识我们先来看几个概念,这有助于理解后面反汇编的输出结果。栈(stack)栈,相信大家都十分熟悉,push
2015-01-12 23:04:53 670
转载 umask
一 权限掩码umaskumask是chmod配套的,总共为4位(gid/uid,属主,组权,其它用户的权限),不过通常用到的是后3个,例如你用chmod 755 file(此时这文件的权限是属主读(4)+写(2)+执行(1),同组的和其它用户有读写权限)二 umask的作用默认情况下的umask值是022(可以用umask命令查看),此时你建立的文件默认权限是644(6-0,6
2015-01-12 23:01:42 857
转载 shell中单引号、双引号、反引号的区别
shell可以识别4种不同类型的引字符号: 单引号字符' 双引号字符" 反斜杠字符\ 反引号字符` 1. 单引号 ( '' )# grep Susan phonebook Susan Goldberg 403-212-4921 Susan Topple 212-234-2343 如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldbe
2015-01-12 22:58:13 820
原创 typedef常见用法
不管是在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错。用途一:定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:char* pa,
2015-01-12 22:52:38 624
原创 gzip和tar常见用法
gzip参数:-c --stdout write on standard output, keep original files unchanged-d --decompress decompress-v --verbose verbose mode举例:gzip filename --将filename压缩为filename.gz,原文件不再存
2014-11-13 14:47:05 4535
原创 C++多个头文件重复定义变量问题
head_file1.h的内容如下:#ifndef _HEAD_FILE1_H#define _HEAD_FILE1_H#define MAX 100#endif/*** _HEAD_FILE1_H*/
2014-10-15 09:22:16 2391
转载 Linux启动流程简介
BIOS系统启动,首先进入BIOS。 ● BIOS 为 Base Input/Output System(基本输入输出系统)的简写 ● 其执行POST(Power on self test,上电自检),在发现问题时发出告警声 ● 在启动设备(cd-rom,网络,硬盘等)中搜寻boot loader ● 将boot loader stage1程序加载进
2014-08-13 15:55:51 642
原创 BIOS启动过程
启前各系统应该没差别第一步:当我们按下电源开关时,电源就开始向主板和其它设备供电,此时电压还不太稳定,主板上的控制芯片组会向CPU发出并保持一个RESET(重置)信号,让CPU内部自动恢复到初始状态,但CPU在此刻不会马上执行指令。当芯片组检测到电源已经开始稳定供电了(当然从不稳定到稳定的过程只是一瞬间的事情),它便撤去RESET信号(如果是手工按下计算机面板上的Reset按钮
2014-08-13 15:22:45 1875
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人