自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (4)
  • 收藏
  • 关注

原创 一个码农的非典型日常爱好

不知道大家是否有日常记账的习惯,反正我有,这些年我一直使用某鱼记账APP,但是最近它广告实在太多,于是突然萌生了自己做一个适合自己的记账App的想法。虽然我算是个程序员,但是我平时只用汇编和C,对于面向对象的C++/Java都没学过。白天需要上班,只能夜深人静的时候,撸会儿代码,算是给生活增添一份乐趣吧。首先我相信编程语言是相通的,百度了下,在网上找到了廖雪峰的官方网站之J...

2019-12-31 18:07:47 644

原创 快!这是关于"Segmentation fault"的最后一趟车!

在该系列的第一篇文章中已经教给大家一个通用的方法就是利用backtrace函数和addr2line命令定位问题,戳这里查看如何轻松搞定“Segmentation fault”,看这篇就够了!至于如何把gdb异常调用栈不包含动态库的实现方法移植到任意平台(ARM/MIPS...)的方法,需要复习的小伙伴看这里:大招!如何把Gdb异常调用栈功能移植到任意平台?今天主要分析包含动态库...

2019-11-06 20:08:31 892

原创 大招!如何把Gdb异常调用栈功能移植到任意平台?

Hello,今天又是Q哥来给大家进行分享了~当屏幕弹出“Segmentation fault”时,程序员该怎么办?之前文章已经教给大家一个通用的方法就是利用backtrace函数和addr2line命令定位问题,没看过上一篇文章的小伙伴可以戳这里查看如何轻松搞定“Segmentation fault”,看这篇就够了!如果你熟悉gdb,当程序跑飞,我们可以执行ba...

2019-10-28 16:32:52 349

原创 如何轻松搞定 Segmentation fault ,看这篇就够了!

我相信每个程序员年轻的时候,在运行某程序,当屏幕弹出“Segmentation fault”时,你会变得非常焦虑,因为你不知道代码哪里跑挂了,初级程序员常常使用printf函数在怀疑点一个个的加打印去定位问题出在哪里了。如果你熟悉gdb,你可能会使用gdb去运行这个程序,然后异常后执行backtrace(简写bt)命令打印异常调用栈。但是gdb并不是万能的,例如程序运行一段...

2019-10-18 18:09:28 118964 1

原创 Android逆向基础知识总结文档汇总

逆向基础十七:Android Gdb调试与延迟绑定研究

2020-06-11 22:53:55 663

原创 Linux栈溢出攻防原理

、前言Linux下常用的拷贝函数(如strcpy、memcpy等)如果使用不规范,常常会导致栈溢出。也就是你的软件系统本身存在bug,这样就会成为别人攻击的目标。本文主要讲的是Linux系统如何给栈溢出增加防护网?攻击者又有什么手段绕过一层层防护网实现攻击?2、栈溢出防御2.1 地址随机化技术Linux系统提供设置堆栈地址随机化技术,例如函数内部变量存在栈上,每次打印函数内部...

2019-06-19 19:27:55 1590

原创 故障定位:利用gdb给Linux动态库打热补丁

一、前言对Linux下ELF文件格式的分析是Linux攻防的基础。掌握ELF文件的格式分析,不仅仅是学习别人如何攻击软件的目的,更多的我们应该利用知识帮助解决实际问题。例如Linux有些故障很难复现,如果出了问题,重新换软件版本,很可能就复现不了了。于是在出现故障时,不重启应用(进程)的前提下,给应用程序打热补丁,用新函数替换旧函数,可以达到获取相关异常信息或者修复故障的目的。...

2019-05-11 12:10:42 579

原创 LD_RRELOAD预加载:对Linux下常用命令的攻击

前言Linux下有许多常用的命令,例如cd可以打开一个目录;ls可以查看目录或文件;rm可以删除目录或文件。每个Linux命令其实就是一个可执行的二进制文件,每个文件都有个MD5值,MD5值是用来保证文件不会篡改。比如安装了相同的系统的环境,ls命令的MD5值都是固定的,如果修改二进制本身的ELF文件,通过MD5值对比就很容易发现文件中毒了。下文通过LD_PRELOAD预加载技术,在不修改...

2019-05-05 20:10:50 931 1

转载 linux登录密码破解

下文是转载的一篇SHA512破解,经测此法也可破解MD5。另外破解速度取决于字典的好坏,可寻找比较优秀的字典。 https://blog.csdn.net/Key_book/article/details/80439243 linux密码暴力破解由于MD5加密已经发展了很多年,现在市面上已经积累了大量的MD5数据,这样,MD5的安全性也就受到了威胁,所以,从centos6.x...

2018-12-08 19:44:52 1422

原创 “is not a core dump: File format not recognized”错误解决

现象:   我们执行生成core的文件并不是在linux的目录下,而是在windows 和linux共享的hgfs下,导致生成的core.*** 都是0 字节大小。解决:    把需要运行的程序拷贝到linux 的根目录下运行即可。

2015-02-11 22:14:06 8412 1

原创 随笔————写于毕业前夕

我是一个即将毕业的学生,在研究生期间做的主要是Linux驱动方向,也与师弟们一起完成过一个重庆289厂的一个ARM+Linux产品,当遇到技术问题也常常求助于CSDN中的大牛们,因此也结交了几个好友,去年因为找工作不知道去哪个企业的时候,短短一个星期,上百位CSDN的热心朋友给予我宝贵的建议,最终我选择了离家近的南京的公司。       其实对于Linux驱动,我还是个菜鸟,平时学习的时候喜欢

2014-03-10 15:47:39 2006 2

转载 内存屏障

转自http://blog.chinaunix.net/uid-9185047-id-445168.htmlhttp://hi.baidu.com/_kouu/item/7a796014bdb6d78d88a956d9言归正传,先解释下什么是内存屏障。内存屏障是指“由于编译器的优化和缓存的使用,导致对内存的写入操作不能及时的反应出来,也就是说当完成对内存的写入操

2014-02-25 14:39:09 1214

原创 Determining IP information for eth0...failed 错误解决

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 问题描述:虚拟机使用wget命令上网,执行service network restart后出现如下错误Determining IP information for eth0...failed解决办法:step1:修改/etc/sysconf

2014-01-07 12:04:04 30081 5

转载 I2C设备移植

转自http://blog.csdn.net/wtao616/article/details/6147740  前面转载了很多关于i2c的文章,做完一个项目了,也该自己写点i2c心得了,我这个可是纯应用角度的,想看原理的,去看转载的文章,人家写的好多了!    对于一个i2c设备来说,其设备文件是最简单也是最复杂的,说它简单是因为很设备厂商会提供linux下的代码,这样就简单了;但

2013-10-28 21:00:01 2087 1

原创 SAM9X25文件系统ubi使用问题

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 问题描述:使用SAM9X25,原先板子提供的是ubi文件系统的镜像,没有文件系统目录,这样无法进行开发。解决办法:思路是调试阶段使用nfs文件系统,产品阶段使用ubi文件系统Step1:配置内核和虚拟机均支持nfs文件系统,修

2013-08-26 09:35:17 1811

原创 Unable to handle kernel NULL pointer dereference at virtual address 0000错误解决

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 问题描述:使用AT91SAM9X25时,串口0(ttyS1)不能使用,出现如下错误Unable to handle kernel NULL pointer dereference at virtual address 0000

2013-07-30 14:49:03 3756 1

原创 error: variable '__this_module' has initializer but incomplete type错误解决

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 问题描述:使用SAM9X25  内核版本是2.6.39 ,编译内核驱动时候会出现error: variable '__this_module' has initializer but incomplete type错误解决办法:m

2013-07-11 09:27:27 5995 1

原创 VFS: Cannot open root device "nfs" or unknown-block(0,255)错误解决

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 问题描述:使用SAM9X25  内核版本是2.6.39 ,采用NFS文件系统, 在启动内核时会出现VFS: Cannot open root device "nfs" or unknown-block(0,255)错误解决办法

2013-07-05 10:24:15 17848 3

原创 Verifying Checksum ... Bad Data CRC 错误解决

1.问题描述:使用SAM9X25  内核版本是2.6.39 在启动内核时会出现Verifying Checksum ... Bad Data CRC 错误2.解决办法:查看原先uboot参数:bootcmd=nand read.i 0x22000000 0x00200000 0x280000; bootm 0x22000000 //发现内核镜像大于0x80000修改uboot启

2013-06-26 14:25:37 12140 1

转载 uboot中bootargs参数设置

转自http://blog.sina.com.cn/s/blog_6e5e78bf0100qv38.html U-boot的环境变量值得注意的有两个: bootcmd 和bootargs。u-bootcmd    前面有说过bootcmd是自动启动时默认执行的一些命令,因此你可以在当前环境中定义各种不同配置,不同环境的参数设置,然后设置bootcmd为你经常使用的那种参数。u-

2013-06-26 10:26:26 8498

转载 Linux中的内存屏障

转自http://hi.baidu.com/_kouu/item/7a796014bdb6d78d88a956d9 内存屏障是一个很神奇的东西,之前翻译了linux内核文档memory-barriers.txt,对内存屏障有了一定有理解。现在用自己的方式来整理一下。在我看来,内存屏障主要解决了两个问题:单处理器下的乱序问题和多处理器下的内存同步问题。为什么会乱序现在的C

2013-06-16 16:45:43 770

原创 linux串口0x03,0x13问题

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清环境:mini2440,fl6410,atmel9g45都会出现这样的问题问题描述:使用RS485串口标准通信,发现大多数情况下数据接收没问题,但是有时却有问题。问题解决:通过串口调试工具向ARM串口发送数据,由ARM接收,发现无法

2013-05-28 16:34:39 3712

原创 linux中C语言实现双向循环链表

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 阅读linux2.6.32.2中双向循环链表的实现,借鉴其内核代码,在应用层实现双向循环链表的建立,插入,删除,以及遍历操作。包含两个文件,list.h是双向循环链表实现函数,test.c是其测试代码,有一定的参考价值! li

2013-05-21 16:28:59 3629

转载 C语言中的逗号表达式与printf参数

转自http://www.cnblogs.com/hnrainll/archive/2011/08/03/2126660.html C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如:  3+5,6+8称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为         表达式1,表达式2逗号表达式的求解过程是:先求解表达式1

2013-05-02 17:04:44 2393

原创 rmmod: chdir(/lib/modules): No such file or directory

针对飞凌6410中动态卸载驱动时候出现rmmod: chdir(/lib/modules): No such file or directory怎么解决?1.在文件系统目录中创建/lib/modules/3.0.1这个空目录2.查看/sbin中是否有rmmod,如果没有,静态编译如下代码,将生成的rmmod放入/sbin中 #include #include #includ

2013-04-21 19:37:55 1607

转载 printk无法打印信息

转自http://blog.chinaunix.net/uid-25811099-id-326899.html 对于做嵌入式或者熟悉linux内核的人来说,对printk这个函数一定不会感到陌生。printk相当于printf的孪生姐妹,她们一个运行在用户态,另一个则在内核态被人们所熟知。  【原型】  int printk(const char * fmt

2013-04-21 19:28:08 1769

转载 Linux中的双向循环链表

转自 http://blog.csdn.net/yaozhenguo2006/article/details/7621551 链表是一种重要的数据结构,应用的非常广泛。链表分为单向链表与双向链表,一般的实现就是在结构体中内嵌指向下一个元素的指针。例如: [cpp] view plaincopyprint?struct name {      int num;

2013-04-14 14:21:15 1211

转载 error:warning no newline at the end of file

转自http://blog.csdn.net/digu/article/details/5945279 main.c :10:2 warning: no newline at the end of file修复这个警告,在文件结尾回车一下就行了。可以很少会有人去仔细探究,为什么gcc会给出这么一个警告?原因其实也很简单,因为标准规定如此。C99第5.1.1.2节这样写道:E

2013-03-04 13:42:48 845

原创 Cadence Allegro学习笔记

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127  制作元器件库OrCAD Capture CIS创立单个元器件(直接新建元器件、用电子表格建立元器件)、创立复合封装元器件、大元器件的分割 原理图设计OrCAD Capture CIS创建分级模块 PCB设计预处理OrCAD Capture CIS编辑元器件属性、设计

2013-02-22 09:05:59 2933

转载 NMOS基本逻辑电路分析

转自http://www.elecfans.com/dianzichangshi/2009040745189.html NMOS逻辑门电路是全部由N沟道MOSFET构成。由于这种器件具有较小的几何尺寸,适合于制造大规模集成电路。此外,由于NMOS集成电路的结构简单,易于使用CAD技术进行设计。与CMOS电路类似,NMOS电路中不使用难于制造的电阻 。NMOS反相器是整个NMO逻辑门电路的基

2013-01-21 09:55:53 7080 2

原创 Linux下的网络设备驱动(一)

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清 一.网络设备驱动基础1.      以太网基础理论以太网是局域网的一种,它使用载波监听多路访问及冲突检测技术(CSMA/CD),并以10M/S的速率运行在多种类型的电缆上,常用的网卡芯片有DM9000、DM9161、CS8

2013-01-20 10:05:05 6808 1

原创 ARM体系结构

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清  ARM寄存器普通寄存器R0-R15,状态寄存器CPSR和SPSR。其中R15别名PC,中文名程序计数器;R14别名LR,中文名链接寄存器;R13别名SP,中文名栈指针寄存器。CPU执行一条指令时主要有三个步骤:取指、译码

2013-01-19 13:42:06 2764

原创 Linux下的Backlight子系统(二)

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清  三.Backlight核心驱动下面我们讲讲backlight子系统。背光子系统目录在/driver/video/backlight下,其中背光子系统核心代码是backlight.c先查看/driver/video/bac

2013-01-18 09:01:26 12351 1

原创 Linux下的Backlight子系统(一)

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 原创作者:南京邮电大学  通信与信息系统专业 研二 魏清一.Backlight背光子系统概述我们的LCD屏常常需要一个背光,调节LCD屏背光的亮度,这里所说的背光不是仅仅亮和不亮两种,而是根据用户的需求,背光亮度是可以任意调节。Linux内核中有一个backlight背光子系统,该系统就是为

2013-01-17 09:24:06 8245 1

原创 Linux下的Watchdog驱动

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127  对于看门狗驱动,在我们内核中把这些代码放在/driver/watchdog文件夹下面,但是watchdog并没有子系统,每个驱动都是独立的,需要我们根据自己的平台去编写看门狗驱动,比如mini2440看门狗驱动代码就是/driver/watchdog/S3c2410_wdt.c,这个代码比较简

2013-01-10 09:08:24 4029

原创 Linux下的RTC子系统

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127  实时时钟的作用主要是为操作系统提供一个可靠的时间,并在断电下,RTC时钟也可以通过电池供电一直运行下去。实时时钟驱动也有一个子系统,叫做RTC子系统,其源代码目录是/driver/rtc/,在这个目录下有一个rtc核心代码区,主要是Rtc-dev.c、Rtc-sysfs.c和Rtc-proc.

2013-01-09 10:07:41 4668

原创 Linux下的LED子系统

版权所有,转载必须说明转自 http://my.csdn.net/weiqing1981127 最简单的led驱动就是从端口输出0或1来关闭或点亮灯。而我们这里讲的led子系统,主要是对led事件进行了分装和优化,这里我们主要讲的是可以实现跨平台的led驱动。不管你是使用三星的平台,还是Atmel的平台,你只要知道如何在你的BSP中添加平台数据,并且知道如何在应用程序中使用这个驱动

2013-01-08 09:18:49 11320

原创 Linux下的Keyboard子系统

版权所有,转载请说明转自 http://my.csdn.net/weiqing1981127 最简单的按键驱动就是一个中断处理函数,当用户有按键,通过read函数向应用层上报按键信息。而我们这里讲的keyboard子系统,主要是对按键进行了分装和优化,这里我们主要讲的是可以实现跨平台的按键驱动。不管你是使用三星的平台,还是Atmel的平台,你只要知道如何在你的BSP中添加平台数据,并且

2013-01-05 09:52:03 5169

原创 Linux内核总述

版权所有,转载请说明转自 http://my.csdn.net/weiqing1981127  Linux内核1.Linux内核主要由进程调度(SCHED)、内存管理(MM)、虚拟文件系统(VFS)、网络接口(NET)和进程通信(IPC)五个子系统组成。1.1进程调度控制系统中的多个进程对CPU的访问,使得多个进程能在CPU中”微观串行,宏观并行”地执行。1.2内存管理的主要作用是

2012-12-27 14:04:53 1032

转载 At91SAMXX系列设置GPIO口中断端口方法

转自:http://rico-studio.com/linux/at91-gpio-interrupt/Linux: 2.6.31Processor: AT91SAM9XEThere are two types of interrupts you can create for an AT91.  An external interrupt or a GPIO interrupt.  A

2012-12-19 22:11:42 3556

Android逆向CTF基础题汇总

附件是八道Android基础逆向题,基本都是CTF题。平时网上基础的CTF题目比较难找,全靠平时慢慢积累起来的,后面有其他做过的CTF题再贴出来分享给大家练手。

2020-06-11

crackme_linux_x64

网上linux平台的crackme比较少,64位的更少,提供一个简单的linux X64下的crackme可执行程序,供大家入门用(老司机不用下载了)。 非常简单,主要熟悉下IDA和简单汇编基础,如果破不了,具体破解步骤,可以去公众号“嵌入式Linux技术分享”查询。

2019-10-20

基于Linux内核的CFS调度算法研究

通过分析Linux 2.4 和2.6 内核调度算法的缺点,介绍了基于公平思想的CFS 调度算法的优点。深入分析了CFS 算法的思想和核心结构,并研究了CFS 算法的调度过程、具体实现的数据结构和细节。

2012-12-01

空空如也

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

TA关注的人

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