自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 寻求对MIPS架构(国产龙芯处理器)感兴趣的软件开发人员一起开发开源UEFI BIOS

大家好:       作为一位软件开发人员,相信大家都思考过这样一个问题:为什么国产龙芯处理器性能与Intel同时期的处理器性能差别如此之大?为什么国产开源的软件发展远远不及国外?------是我们软件开发人员自身素养不够?还是原本国产处理器的硬件性能就不行?本人毕业与中国科学院计算技术研究所龙芯实验室,在龙芯实验室研发的那几年,也看到了龙芯的开源论坛上有那么多一批批对龙芯软件开源的爱好者。一

2014-08-16 10:51:43 2056 2

原创 ioread8()函数分析

ioread8()函数分析                                                学习时间:2014/5/21 当外设IO寄存器通过ioport_map()函数映射后,Linux内核如何要读写这些IO寄存器就必须通过ioread8()、ioread16()、ioread32()等这类函数读写。

2014-05-21 17:59:37 3631

原创 Linux内核外设IO寄存器与IO mem读写函数总结

学习时间:2014/5/21 外设IO寄存器地址独立编址的CPU,这时外设IO寄存器应该称为IO端口,访问IO寄存器可以ioport_map()将其映射到虚拟地址空间,但是实际上这只是给开发人员造成一个“假象”,并没有映射到内核虚拟地址,仅仅是为了使用和IO内存一样的接口访问IO寄存器;当然,也可以直接使用in/out指令访问IO寄存器。如:X86架构处理器。这一类的访问有两种方式;(

2014-05-21 16:38:13 3651

原创 Linux内核中IO端口访问机制(第一篇)—概述

前段时间花了近一个

2014-05-21 15:51:33 1083

原创 内核中C代码部分#与##符号分析

在#define中,标准只定义了#与##

2014-05-21 11:04:52 617

转载 /proc/cpuinfo文件解析

  学习时间:2013/12/10在Linux系统中,提供了proc文件系统显示系统的软硬件信息。如果想了解系统中CPU的提供商和相关配置信息,则可以通过/proc/cpuinfo文件得到。本文章针对该文件进行简单的总结。  基于不同指令集(ISA:Instruction Set Architecture)的CPU产生的/proc/cpuinfo文件不一样,基于X86指令集

2014-05-14 16:29:07 732

翻译 UEFI小结-Handle的来龙去脉

学习时间:2013/10/14参考资料:http://www.biosren.com/thread-3440-1-1.html说明:本文涉及的源代码具体见《附件 UDK2010.SR1.UP1.Complete-131011_compile-version.tar》 本文说明:本人刚学习UEFI不久,写该文,一是为了将学到的东西做一个规范化的总结,二是为了给初学UE

2014-05-14 16:28:04 1401

翻译 X86寄存器介绍

学习日期:2013/9/1880X86寄存器介绍32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和EDX)2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP)6个段寄存器(ES、CS、SS、DS、FS和GS)1个指令指针寄存器(EIP) 1个标志寄存器(EFlags)1 数据寄存器数据寄存器主要用来保存操作数和运算

2014-05-14 16:26:39 591

原创 从预防缓冲区溢出看MIPS与X86在函数调用开辟栈的区别

  学习时间:2013/9/16Linux下有三类获取函数调用栈信息的函数:(1)__builtin_frame_address();(2)__builtin_return_address();(3)backtrace()类。但是经过测试发现在MIPS架构的处理器上都不能正常使用。通过分析X86与MIPS函数调用的反汇编代码,可以得到X86架构与MIPS架构在函数调用的时候开辟

2014-05-14 16:23:43 1172

原创 Linux下X86与MIPS区别之一:代码放在数据区是否可以被执行

     学习时间:2013/9/10X86与MIPS区别:(1)代码放在数据区是可以被执行的,而MIPS却不可以;(2)函数调用开辟栈空间大小不一样。以下是基于MIPS上的一段把执行代码放在数据区的程序:#includechar shellcode[] = {"\x50\x73\x06\x24""\xff\xff\xd0\x04""\x50\x73\x

2014-05-14 16:22:14 1035

翻译 自己用C语言编写who命令

                                                                 学习时间:2013/8/12#include#include#include#includeint main(){struct utmp *p_utent;long t;setutent();while((p_

2014-05-14 16:20:48 840

翻译 /proc/stat 详解

学习时间:2013/09/07参考文档 http://www.linuxhowtos.org/System/procstat.htm在Linux系统中,可以用/proc/stat文件来计算cpu的利用率。这个文件包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。cat /proc/stat cpu 65376847 362756 240515

2014-05-14 16:18:37 801

原创 qemu网络启动模式配置

  学习时间:2011/12/61tap/tun启动模式(虚拟机启动网络参数-net nic –nettap)Qemu的tap初始化脚本缺省是/etc/qemu-ifup,内容如下:#!/bin/sh/sbin/ifconfig $1192.168.0.11 如果不存在tun内核模块,可以自己编译。TUN模块的内核配置项位于:Device

2014-05-14 16:15:52 1549

原创 虚拟机qcow2格式文件系统制作

                                                                     学习时间:2011/9/121建立qcow2文件系统格式的虚拟机文件系统(注意:可用du–sh命令查看raw.img大小找到这两种方法的区别)方法(1):qemu-imgcreate –fraw raw.img 10G

2014-05-14 16:09:55 2702

原创 开通博客说明

本人热爱技术,从处理器底层逻辑电路硬件设计到

2014-05-14 16:04:50 462

空空如也

空空如也

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

TA关注的人

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