fengjingge
码龄16年
关注
提问 私信
  • 博客:99,453
    社区:263
    99,716
    总访问量
  • 49
    原创
  • 948,187
    排名
  • 10
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2009-01-20
博客简介:

fengjingge

查看详细资料
个人成就
  • 获得16次点赞
  • 内容获得6次评论
  • 获得36次收藏
创作历程
  • 2篇
    2016年
  • 11篇
    2015年
  • 47篇
    2014年
  • 1篇
    2012年
成就勋章
TA的专栏
  • dm365
  • 编码
    50篇
  • 经验谈
    11篇
  • 正则表达式
    2篇
  • js
    1篇
  • gcc
    2篇
  • 编译器
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

更新和迁移phabricator

如何迁移数据库:1)./phabricator/bin/storage dump | gzip > backup.sql.gz2)gunzip -c backup.sql.gz | mysql -u -p    //注意需要迁移前后phabricator的版本保持一致如何保持一致? 进入phabricator/arcanist/libphutil的git仓库,git reset操
原创
发布博客 2016.08.05 ·
1790 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

Non temporal store调研分析

Nontemporal store调研分析目录:我们为什么要研究Nontemporal指令?我们的目的是什么?Nontemporal指令是什么?Nontemporal指令的作用是什么?Nontemporal指令现在的应用有哪些热度如何?Nontemporal指令怎么用?Nontemporal指令有哪些?Nontemporal指令在gcc中支持情况如何?如何在
原创
发布博客 2016.07.03 ·
3467 阅读 ·
4 点赞 ·
0 评论 ·
1 收藏

自反,反自反

自反: 如果a是A的元素,那么是R的元素反自反: 如果a是A的元素,那么不是R的元素对称:如果是R的元素,那么是R的元素反对称:如果,是R的元素,那么a,b相等传递:如果,是R的元素,那么是R的元素
转载
发布博客 2015.11.03 ·
1720 阅读 ·
4 点赞 ·
0 评论 ·
2 收藏

固定特定的线程到特定的CPU

https://gcc.gnu.org/onlinedocs/libgomp/GOMP_005fCPU_005fAFFINITY.htmlDescription:Binds threads to specific CPUs. The variable should contain a space-separatedor comma-separated list of CPU
转载
发布博客 2015.07.30 ·
790 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

gcc phi结构体

gcc phi结构体phi是gcc中重要的数据结构类型,它主要用于ssa中的别名处理,本文主要讲述它的作用,相关数据结构体和核心处理函数1.作用 phi主要用于别名处理,对于在ssa阶段中因为分支导致不确定具体是什么数据,采用phi. 2.主要数据结构struct GTY(()) phi_arg_d { /* imm_use MUST be the first element in stru
原创
发布博客 2015.06.30 ·
1014 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

elf文件分析-程序员的自我修养第三章学习

今天学习程序员的自我修养第三章学习对其中的一些内容提取。elf文件Linux操作系统二进制文件统一管理的格式文件,对其分析对于理解编译和链接、集成大型系统,修复bug很有帮助。源程序都会通过编译、链接成可执行文件,可执行文件的elf文件格式是固定,下面看如下图:这个就是C语言代码与elf文件格式的对应。elf文件是通过段来组织的:例如:.test  存放代码
原创
发布博客 2015.02.13 ·
913 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

编译和链接技术总结

一个程序需要经过预编译、编译、汇编、链接成为可执行文件的过程。预编译过程:工具命令gcc -E hello.c -o hello.icpp hello.c  > hello.i过程:1.将宏定义展开,去除#define2.处理预编译命令。3.展开#include文件。4.删除//  /**/行5.添加行号和文件名标识。 编译:将C语言编译成汇编语
原创
发布博客 2015.02.13 ·
632 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

workload分层

之前讲述了workload的分层,对于不同的测试选择workload的方式不同。workload选择的原则:1.不同的层级不同的应用测试层次有:   1.Arithmetic-logic unit         利用Instruction   2.Central processing unit       利用Instruction mix   3.Operating s
原创
发布博客 2015.01.15 ·
1087 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

workload选择

在确定workload的之后,下一步就是如何描述workload。workload描述通俗理解为限定条件、测试指标以及输出的统计数据。针对之前讲述了workload的分层,对于不同的测试选择workload的方式不同。workload的描述有:1.主要应用是什么2.地点、场景3.user sessions4.输入参数5.限定条件,对实验影响较大因素6.输出值,也
原创
发布博客 2015.01.15 ·
3059 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux桌面操作系统性能分析学习总结

1.什么是计算机性能所谓计算机的性能(Performance)通常是指计算机的速度,它是程序执行时间的倒数。而程序执行时间是指用户向计算机送入一个任务后,直到获得他需要的结果这一段等待时间。包括:1.访问磁盘和访问存储器的时间2.CPU 运算时间3.I/O 动作时间4.操作系统的开销时间等。2.Linux桌面操作系统性能分析意义1.操作系统的性能直接影响了其上应用系
原创
发布博客 2015.01.14 ·
2783 阅读 ·
0 点赞 ·
0 评论 ·
8 收藏

性能评估思路总体

性能评估设计步骤:1.陈述目标,定义系统。确定所设定的目标,建立软硬件系统,设定边界2.列出所提供的服务和产出。3.选择指标。通常这些指标与速度、准确度、可靠性有关。4.列出变量。这一步列出有关影响性能的所有的变量,这列出第一遍的变量之后,好好再分析一下,再添加有关的其他变量,这些变量尽可能通俗易懂。5.选择因素来研究。在小4中列出的变量分为在性能分析中可变和不变量,我们把这些
原创
发布博客 2015.01.14 ·
764 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

32位和64位程序兼容性

最近项目需要将之前开发的32位程序迁移到64位操作系统。对于上层应用程序而言没有什么特别的差异。对于底层程序例如嵌套汇编等对寄存器的操作需要考虑这个问题,不同点在于字节对齐,寄存器操作和指令的不同。对齐单位32位和64位是不一样的。        寄存器,32位的有eax、ebx,而64位操作系统是rax、rbx。         指令:32位的pushl、addl、movl,而64位
原创
发布博客 2015.01.08 ·
1355 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

PowerSaver驱动源码分析技术文档

目  录一、简述 1二、操作环境 2三、主要原理及关键结构体、函数分析 2cpufreq_policy结构体 2cpufreq_frequency_table结构体 4eps_cpu_data结构体 4四、具体函数分析 6eps_cpu_init分析 6eps_cpu_exit分析 7eps_verify分析 7eps_target分析 7eps_s
原创
发布博客 2015.01.06 ·
1171 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

字符型驱动编写技术文档

一、概述    一个字符型驱动的demo程序,主要功能:申请一块内存,把它当作设备,进行读写操作。它涵盖了编写驱动的主要函数和流程,适合入门驱动人员参考。该程序已经验证通过。二、源码有主要3个程序:Makefile用来编译,my_driver.c驱动程序,test.c是测试程序。.├── Makefile├── my_driver.c└── test    └─
原创
发布博客 2014.12.30 ·
911 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

PadLock AES内核测试模块(1)

一、简述    主要编写了一个测试验证PadLock AES内核接口的验证模块。应用PadLock AES内核接口实现加密解密。本文提供了应用该模块的方法、步骤、原理及源码。二、操作环境操作系统mint17内核3.8.0编译器gcc4.7.3CPUVIA Nano
原创
发布博客 2014.12.27 ·
1570 阅读 ·
1 点赞 ·
1 评论 ·
3 收藏

PadLock AES内核测试模块(2)

一、简述    主要编写了一个测试验证PadLock AES内核接口的验证模块。应用PadLock AES内核接口实现加密解密。本文提供了应用该模块的方法、步骤、原理及源码。二、操作环境操作系统mint17内核3.8.0编译器gcc4.7.3CPUVIA Nano
原创
发布博客 2014.12.27 ·
1815 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

兆芯Nano与Intel CPU flag对比表

原创
发布博客 2014.12.10 ·
1595 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

深入理解计算机系统第五章学习-性能优化 3

5.8分支预测现在的处理都支持分支预测功能,在执行分支预测时候,在执行判断语句之前,处理器已经执行了判断后的语言,如果判断正确,就会直接把处理结果给执行单元,否则就会接受分支预测失败惩罚,如果预测比较容易预测,是可以很好提升其性能,如果分支判断确实是随机的话最好不要用这种方法。不过通常的情况下建议多运用分支预测预取技术。GCC在判断是否运用分支预测预取技术的时候,会根据代码的风格判断,以下
原创
发布博客 2014.12.05 ·
1077 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

深入理解计算机系统第五章学习-性能优化 2

5.5循环展开一种比较常见的优化程序算法,就是将一次循环展开多次,来减少循环的次数。例如combine5:void combine5(vec_ptr v, data_t *dest){long int i;long int length = vec_length(v);long int limit = length - 1;data_t *data = get_ve
原创
发布博客 2014.12.05 ·
1153 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

深入理解计算机系统第五章学习-性能优化 1

一、简述本文主要是通过学习深入理解计算机系统第五章-性能优化之后的理解和总结。第五章主要目的通过对底层硬件架构和机制(汇编、处理器架构)的理解,让程序员写出更加高效(性能)的代码。二、为什么要进行性能优化对于性能需要不是很急切的地方进行性能优化的意义不是很大,进行性能优化是需要成本的,需要对原始代码进行重构。随着计算机技术不断发展,处理器性能的提高,往往性能可以通过硬件来弥补,但是有些
原创
发布博客 2014.12.05 ·
2000 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏
加载更多