自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 问答 (1)
  • 收藏
  • 关注

原创 汇编语言寻址方式(Linux)

索引寻址直接寻址立即数寻址简介寻址寄存器寻址基址寻址

2016-03-08 10:28:39 1070

转载 汇编语言 call和ret指令 的具体执行

call和ret指令call和ret指令都是转移指令,它们都修改IP,或同时修改CS和IP。它们经常被共同用来实现子程序的设计。 ret和retfret指令用栈中的数据,修改IP的内容,从而实现近转移;retf指令用栈中的数据,修改CS和IP的内容,从而实现远转移。CPU执行ret指令时,进行下面的两步操作:(1)(IP) = ((ss)*16 +(sp))(2

2016-03-02 11:02:36 21844

转载 mips 寄存器解释

MIPS 有32个寄存器(0~31), 每个寄存器各有不同的用途。寄存器 zero (  0):    0 常量。不能保存数据寄存器 at   (1):        预留给 汇编编译器用寄存器  v0 (2)             v1 (3) :         这两个寄存器用来保存函数的返回值寄存器 a0 (4)           a1 (5)        

2016-03-01 18:13:29 1132

原创 gdb commands命令用法

gdb commands命令用法基本原理: 设置断点,使用 command 命令设置断点的执行命令 例如:在断点 1 处,打印 ret 变量的值。 //设置断点(gdb) b rx_dataBreakpoint 1 at 0xffffffffa02cccf8: file drivers/target/iscsi/iscsi_target_util.c, line 1347.(gdb)

2016-02-25 17:24:59 9968

转载 INT 13中断介绍

直接磁盘服务(Direct Disk Service——INT 13H)  00H —磁盘系统复位 01H —读取磁盘系统状态 02H —读扇区 03H —写扇区 04H —检验扇区 05H —格式化磁道 06H —格式化坏磁道 07H —格式化驱动器 08H —读取驱动器参数 09H —初始化硬盘参数 0AH —读长扇区 0BH —写长扇区 

2016-02-02 14:40:47 852

转载 Linux内核网络协议栈代码分析

一.linux内核网络栈代码的准备知识 1. linux内核ipv4网络部分分层结构: BSD socket层: 这一部分处理BSD socket相关操作,每个socket在内核中以struct socket结构体现。这一部分的文件 主要有:/net/socket.c /net/protocols.c etcINET socket层:BSD socket是个可以

2016-01-19 14:48:19 628

原创 C语言通过逻辑运算(与或非)实现加法

通过半加器原理,用C语言实现加法(减法)

2016-01-13 16:03:20 20181

原创 如何使用gdb给某个模块(文件)的所有函数下断点

在这里提供一个原始的shell:#!/bin/bashnm module_name.ko | c++filt | grep -w -i T | awk '{print $3}' | sed 's/,/\\|/g'|sort|uniq|grep ^function.* |awk '{print "b " $1}' >/tmp/__make_break_point__解释: 这里有两步是按照自己需求

2016-01-12 11:38:36 1810

原创 linux gdb调试可加载内核模块

1.在虚拟机中找到模块的加载后的地址cat /sys/module/module_name/sections/.textcat /sys/module/module_name/sections/.datacat /sys/module/module_name/sections/.bss注释:module_name是相应模块的名称 可能返回的结果如下:0xffffffffa022a0000xf

2016-01-11 12:39:11 989

翻译 ubuntu下安装kvm虚拟机

基本照搬自:http://article.yeeyan.org/bilingual/347306,做了一些修改,纯粹是为了记录步骤1.检查是否安装虚拟化egrep -c ‘(svm|vmx)’ /proc/cpuinfo2.安装虚拟机sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager3.添加用户组sudo addus

2016-01-11 10:46:40 417

原创 使用qemu进行内核kgdb调试(ubuntu)

参考文档:http://wiki.ubuntu.org.cn/Kvm%E6%95%99%E7%A8%8B安装虚拟机1.检查虚拟化配置:终端输入: egrep '(vmx|svm)' /proc/cpuinfo 返回的结果里有vmx或者svm即可2.安装kvm:注意:这里安装的并不是图形化界面,只是最简略的安装方法,因此会缺少很多东西。建议使用另外的方法安装,这里暂时不提 命令行下: sudo

2016-01-11 10:38:12 808

转载 逻辑地址、线性地址、物理地址和虚拟地址

本文为转载文章,原文地址:http://www.cnblogs.com/diyingyun/archive/2012/01/03/2311327.html一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插

2016-01-10 11:03:32 343

原创 Linux系统中System.map的解析

首先贴上一小段结果:#sudo cat /boot/System.map-4.2.0-23-generic |grep init_taskffffffff810b3290 T init_task_runnable_averageffffffff8113dc80 T ftrace_graph_init_taskffffffff8117a8a0 T perf_event_init_taskf

2016-01-09 21:05:24 1286

原创 win10+ubuntu14.04双系统有线网络问题

现象:ubuntu下无线可以访问网络,有线无法访问. windwos10下有线无线都可以访问处理过程按照网上查到的方法,发现是IP地址无法正常获取.1.shell中查看本地驱动版本lspci -v在最末尾部,可以看到关于网卡的信息,我的如下04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 P

2015-12-17 10:06:26 5347

原创 内核配置config失败需要的文件

现象:执行 make menuconfig时候如果出现以下错误:*** Unable to find the ncurses libraries or the*** required header files.*** 'make menuconfig' requires the ncurses libraries.*** *** Install ncurses (ncurses-devel)

2015-12-14 14:25:39 458

原创 sshfs挂载远程文件到本地

安装与使用1.安装命令:sudo apt-get install sshfs2.挂载:sshfs <username>@<ipaddr>:</remote path> </local path>对用<>尖括号括起来的内容做一下解释@username:用户名 @ipaddr:IP地址,如192.168.2.123之类的,非局域网IP也可用,跟ssh一样 @/remote path:远端的文件路径

2015-12-14 11:30:41 1302

原创 LINUX内核中编写procfs

procfs说明文档首先要明白,procfs终究还是fs,也就是属于filesystem的一种。因此可以在内核文档中找到相关资料。如果你手头上有一份内核源码,那么可以根据以下相对路径找到这份说明: ./Documentation/filesystems/proc.txt直接在网上也可以看到这份文档: http://lxr.oss.org.cn/source/Documentation/file

2015-12-09 13:59:56 754

原创 LINUX C语言 DNS

LINUX C语言 DNS本文使用的glibc版本是2.19资源下载地址1.GNU LIB C 手册[http://ftp.gnu.org/old-gnu/Manuals/glibc-2.2.3/pdf/libc.pdf]其实这算是LINUX下C语言的库函数手册,大部分函数的简单说明都能在里面查到。另外,如果你的环境是在liunux下,会有更简单的办法,就是man命令请看后面的内容。另外,这个版本的

2015-12-02 16:15:08 1171

原创 Linux 定时器(内核态)

Linux 内核timer定时器

2015-11-24 17:58:32 894

空空如也

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

TA关注的人

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