自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (10)
  • 收藏
  • 关注

原创 xv6上下文切换代码

# Context switch## void swtch(struct context **old, struct context *new);# # Save current register context in old# and then load register context from new..globl swtchswtch: movl 4(%esp),

2017-08-20 09:52:16 783

原创 xv6进程调度代码

最近在研究libco,看到协程切换运行,于是想到很早之前看的xv6,于是翻了一下代码,看看进程调度,以及上下文切换的部分,怀念那段撸OS的日子// Per-CPU process scheduler.// Each CPU calls scheduler() after setting itself up.// Scheduler never returns. It lo

2017-08-20 08:46:51 1670

转载 HOWTO: using gprof with multithreaded applications

gprof,PRE_LOAD

2016-04-21 22:10:35 523

转载 An interesting kind of JavaScript memory leak

Recently, Avi and David tracked down a surprising JavaScript memory leak in Meteor's live HTML template rendering system. The fix will be in the 0.6.5 release (in its final stages of QA right now).

2016-04-11 17:10:27 1043

转载 The Minimum About Unicode and Character Sets

Ever wonder about that mysterious Content-Type tag? You know, the one you're supposed to put in HTML and you never quite know what it should be?Did you ever get an email from your friends in Bulgari

2016-03-21 01:22:14 871

转载 使用SQLAlchemy时数据库连接池的问题

在使用 create_engine创建引擎时,如果默认不指定连接池设置的话,一般情况下,SQLAlchemy会使用一个 QueuePool绑定在新创建的引擎上。并附上合适的连接池参数。 在以默认的方法create_engine时(如下),就会创建一个带连接池的引擎。engine = create_engine('postgresql://[email protected]/dbn

2016-01-17 02:15:24 15614 1

转载 python解析XML

一般使用ElementTree之前,我都会执行:[python] view plaincopyprint?from xml.etree import ElementTree as ET  下面是个例子:[python] view plaincopyprint?try:      tree = ET.parse("Campaign_

2016-01-15 22:45:59 482

转载 WSDL文件详解

转载自:http://kalogen.javaeye.com/blog/418958 WSDL (Web Services Description Language,Web服务描述语言)是一种XML Application,他将Web服务描述定义为一组服务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进行访问(类似远程过程调用)。WSDL首先对访问的操作和访问时使用

2016-01-04 11:13:04 747

转载 Why Not Specialize Function Templates

Why Not Specialize Function Templates?This article appeared in C/C++ Users Journal, 19(7), July 2001. While the title of this article is a question, it could also be made into a statement: this

2015-12-29 13:24:51 377

转载 ucontext实现协程

转载自:http://blog.csdn.net/qq910894904/article/details/41911175目录(?)[+]1.干货写在前面协程是一种用户态的轻量级线程。本篇主要研究协程的C/C++的实现。首先我们可以看看有哪些语言已经具备协程语义:比较重量级的有C#、erlang、golang*轻量级有python、lua、j

2015-12-07 17:09:37 564

转载 解决Mac下GDB提示签名错误

解决Mac下GDB提示签名错误原文作者:Power 转载请保留此链接。安装GDB新的Mac下有gcc、g++,但是没有gdb有人说安装XCode就有,但是我真没有通过Homebrew安装,没有的执行安装brew命令ruby -e "$(curl -fsSLk https://raw.github.com/Homebrew/homebrew/go/install)"然后安

2015-11-28 21:45:18 1195

原创 C++得到成员变量的偏移值

一:零地址转换以下为MFC常用宏:#define OFFSET(structure, member) ((int)&((structure*)0)->member); #include #define GET(A,m) (int)(&((A*)0)->m); using namespace std; struct A{

2015-11-26 23:07:05 3016 1

转载 Python获取操作系统信息(版本、操作系统名称、位数、架构等)

import platformimport osimport sysimport platformdef machine():    """Return type ofmachine."""    if os.name == 'nt' andsys.version_info[:2]        returnos.environ.get("PROCE

2015-11-20 09:42:36 5729

转载 C/C++与Python混合编程

作者:Jho Jerry链接:http://www.zhihu.com/question/23003213/answer/56121859来源:知乎以下讨论中,Python指它的标准实现,即CPython(虽然不是很严格)本文分4个部分C/C++ 调用 Python (基础篇)— 仅讨论Python官方提供的实现方式Python 调用 C/C++ (基础篇)— 仅讨

2015-11-19 09:44:30 2802

原创 绝不重新定义继承而来的缺省参数值--from Effective c++ item 37

重温Effective c++Item 37,Never redefine a function's inherited default parameter value. 虚函数的调用,以及VFP的实现机制,应该已经很清楚了。虚函数通过动态绑定,在通过指针和引用调用的时候,通过实际指向的对象的虚函数列表得到要调用的函数的地址。但是一直不清楚的是,如果派生类重新定义了

2015-11-17 23:20:37 568

转载 关于wxPython打包图标的显示

windows下,在对使用python的编写的程序进行打包时,常用的工具就是py2exe了,该工具只需要一些脚本就看实现将python程序打包成一个exe文件。并且该exe程序的执行不需要系统预先安装python环境。windows下常见的gui成程序在打包时,都不会缺少如下脚本:[python] setup(      windows = [          {      

2015-11-13 10:57:32 1993

转载 Python使用struct处理二进制

有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用 struct来处理c语言中的结构体. struct模块中最重要的三个函数是pack(), unpack(), calcsize()pack(fmt, v1, v2, ...)     按照给定的格式(fmt),把数据封装成字符串(实际上是类

2015-11-01 22:26:33 533

转载 Linux下程序的Profile工具

我们在写程序,特别是嵌入式程序的时候,通常需要对程序的性能进行分析,以便程序能够更快更好地运行,达到实时(real-time)的目的。如果程序很大,分析起来就很困难。如果有个工具能够自动进行程序的性能分析,那就最好了。这里介绍一种Linux下程序的Profiling工具----GNU profiler。gprof的基本用法:1. 使用 -pg 选项编译和链接你的应用程序      

2015-10-20 17:02:25 422

原创 八皇后-优化冲突检测

八皇后冲突判断优化

2015-10-12 23:21:56 1159

原创 八皇后问题(Python实现)

看《Python基础教程》,看到生成器一章,提到八皇后问题,没有继续往后看,自己试着写了一个。八皇后问题是数据结构里面的经典问题,思路主要是利用回溯法,利用栈保留走过的路径,走过的路,入栈,走不通了,出栈,继续往下尝试。思路比较简单,写个伪码没什么问题。但是写得时间比较长,要是面试的时候让你笔写个无BUG可运行版本,那还真得喊救命了运行结果:能够打印出全部92种解法

2015-10-12 20:46:46 3117

转载 C++ 虚函数表解析

前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,R

2015-10-12 11:42:58 287

原创 C++中继承覆写导致基类的成员不可见

在C++中,基类定义了一个成员函数 f(),派生类定义了一个成员函数 f(int),然后派生类来调用:pDerieved->f(),结果会怎样?派生类的重载定义,会导致基类的函数在名称查找的时候,不可见。但是C++的设计哲学,又可以让你用using声明实现基类成员函数在派生类中重载。代码一:#include#includeusing namespace std;c

2015-10-12 01:23:12 451

原创 C++中关于public、protect、private的访问权限控制

一:成员的访问权限1: public访问权限    一个类的public成员变量、成员函数,可以通过类的成员函数、类的实例变量进行访问       #include#includeusing namespace std;class AccessTest{ public: int pub_mem; int pub_fun(){}; protected:

2015-10-11 21:29:33 20444 7

原创 关于Python生成器(Generator的yield、next、send)

习惯了C++和Java等强类型的语言,函数调用都是顺序执行的,返回之后栈清空,不留痕迹。初次遇到Python生成器,理解起来,真是破费周章。关于Python生成器,大概需要关心的主要是yield关键字,以及其后的next和send函数的调用。next函数在迭代的时候,为隐式调用(implicit)。一:生成器函数      生成器函数和一般函数外观上没有什么不同。主要是

2015-10-10 01:24:58 1880

转载 Improve Your Python: 'yield' and Generators Explained

Prior to beginning tutoring sessions, I ask new students to fill out a briefself-assessment where they rate their understanding of various Python concepts. Some topics ("control flow with if/else" or

2015-10-09 21:40:15 411

原创 二分法和牛顿迭代法求平方根(Python实现)

求一个数的平方根函数sqrt(int num) ,在大多数语言中都提供实现。那么要求一个数的平方根,是怎么实现的呢?实际上求平方根的算法方法主要有两种:二分法(binary search)和牛顿迭代法(Newton iteration)

2015-10-09 10:22:07 40215 8

转载 Python中深拷贝与浅拷贝

一、前奏:熟悉Python内存管理在Python中,变量在第一次赋值时自动声明,在创建---也就是赋值的时候,解释器会根据语法和右侧的操作数来决定新对象的类型。引用计数器:一个内部跟踪变量引用计数:每一个对象各有多少个引用当对象被创建并(将其引用)赋值给变量时,该对象的引用计数就被设置为 1>>> x = 3.14语句 x=3.14,创建一个浮点型对象并将其引用赋值

2015-10-08 00:01:24 294

原创 Python中的注释写法

1:单行注释Python中单行注释为在行首使用#字符如:#key,value=x.popitem()2:多行注释Python中多行注释采用''' 或者"""如:'''import time import thread def timer(no, interval): cnt = 0 while cnt<1

2015-10-07 23:26:05 1048

原创 C++中内联函数何时被编译器禁止?

C++当中定义内联函数,可以让编译器将对内联函数的调用直接展开。这就多少有点像宏定义了,而且没有宏定义的缺点(预处理替换,无法当成变量、调用有可能导致参数异常被改、等等)。使用内联函数可以避免函数调用的开销(栈开辟、返回地址设定、栈展开),在一定的程度上可以提高程序的性能。但是这种提高是有代价的。编译器将函数展开,会直接导致可执行程序变大。(导致运行缺页、cache命中

2015-10-06 17:49:22 3748

转载 C++中的struct和class的区别

来自:http://hi.baidu.com/pengxiangbobin19890125/blog/item/b05586eee77300212df53411.html C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。struct能包含成员函数吗?         能!struct能否包含构造和析构

2015-10-06 14:35:24 433

原创 C++以对象作为返回值时编译器的优化,以及临时变量的析构时机

C++以对象返回编译器的优化,以及临时变量的析构时机

2015-10-06 03:17:43 777 1

转载 UNIX下的LD_PRELOAD环境变量

前言        也许这个话题并不新鲜,因为LD_PRELOAD所产生的问题由来已久。不过,在这里,我还是想讨论一下这个环境变量。因为这个环境变量所带来的安全问题非常严重,值得所有的Unix下的程序员的注意。 在开始讲述为什么要当心LD_PRELOAD环境变量之前,请让我先说明一下程序的链接。所谓链接,也就是说编译器找到程序中所引用的函数或全局变量所存在的位置。一般来说,程序的链

2015-10-05 13:45:19 440

转载 根据主定理求递归时间复杂度

在算法分析中,主定理(英语:master theorem)提供了用渐近符号表示许多由分治法得到的递推关系式的方法。此方法经由经典算法教科书《算法导论》而为人熟知。不过,并非所有递推关系式都可应用主定理。该定理的推广形式包括Akra-Bazzi定理。假设有递推关系式,其中为问题规模,为递推的子问题数量,为每个子问题的规模(假设每个子问题的规模基本一样),为

2015-09-29 23:00:55 1441

原创 KMP算法(C++实现)

自己实现了一个KMP算法,竟然要写将近100行,看着树上伪码那么精炼,一股自卑感油然而生,自己真是个战五渣啊...............#include#includeusing namespace std;int GenerateNextArray(const string &sub,int *array){ //-1表示,不光子串,匹配的主串也要往后挪

2015-09-29 10:13:36 416

原创 关于const关键字

C++的const关键字标记了一个变量(或者函数)的常量属性,程序员通过const关键字告诉编译器:这个变量是不可修改的常量,任何企图对其进行修改的操作不要通过编译。const关键字的使用比较容易混淆,参考《Effective C++》现总结如下:1:通过const关键字替代替代宏定义  (item 2:prefer consts enums,inlines to #d

2015-09-28 15:22:29 399

转载 理解堆栈及其利用方法

堆栈基础篇:1、堆栈结构从广义上来讲,堆栈其实就是一种后进先出的数据结构,这跟队列的作用正好相反, 你可以定义一个数组或用malloc分配一块内存来模拟堆栈的作用, 比如openjdk的解释器就要用到堆栈结构来做计算。我们在从c的角度来仔细审视下堆栈的结构,本文以intel体系结构为例。intel处理器定义了跟堆栈有关的几个寄存器:esp/rsp:  保存了当前堆栈栈顶指针的寄

2015-09-26 23:12:26 650

转载 The Knuth-Morris-Pratt Algorithm

The Knuth-Morris-Pratt Algorithm in my own wordsDec 13th, 2009 | Comments For the past few days, I’ve been reading various explanations of the Knuth-Morris-Pratt string searching algorithms.

2015-09-26 00:37:28 418

原创 博客开篇

程序员从业8年,期间学过一些东西,用过一些东西,然后遗忘,然后再次翻书,周而复始,少有总结的时候。少时学编程,有时颇有趣味。有所悟、有所得、豁然开朗、别有洞天的感觉,就像足球场上一个潇洒利落的拉球转身过人,很舒服。然而一路走来,发现除了书柜里面看过的书,熟稔于胸的并没有多少,总需要一遍遍地翻书。为了更好地记忆,将点滴记录于斯,算是一个学习日志,便于自己回顾。

2015-09-23 17:31:11 362

原创 打开MySQL代码调试

mysql提供了详细的调试功能,可以显示代码运行时信息。为了打开调试功能,需要在编译的时候打开调试功能,并且在运行的时候加上调试选型1:编译configure with_debug=fullexport CFLAGS="-g3 -gdwarf-2"export CPPFLAGS="-g3 -gdwarf-2"make cleanmake 2:运行时增加debug选型

2015-09-16 17:37:23 710

原创 MySQL编译DEBUG版本

在阅读源代码的时候,如果能够通过GDB跟踪,会对代码的理解很有帮助。1:编译DEBUG版本,以便于GDB跟踪   ./configure –help   一列帮助信息,最后会有以下信息:   Some influential environment variables:  CC                 C compiler command  CFLAGS  

2015-09-07 17:21:06 4048

ICE框架网络编程

ICE框架开发快速入门,经典PPT,是您学习ICE必备手册。

2018-08-17

Express中文手册

Express中文手册、开发速查手册、方便查找,是您学习node.js必备文档

2018-08-17

IBM面试题以及答案

IBM面试常用题目以及答案, 英文答案。

2010-04-23

tuxedo安装和配置

在Linux下安装和配置Tuxedo,对于新手上路,很有裨益

2009-08-30

tuxedo 编程api速查

提供tuxedo atmi的所有函数速查。反正我用的时候感觉非常好用,肯定会对你有所帮助

2009-01-14

Tuxedo快速上手

很好的tuxedo上手资料pdf格式 非常适合入门。 好好学习,天天向上!

2008-12-20

gdb详细使用手册,pdf版本,希望对您有所帮助

gdb详细使用手册,pdf版本,希望对您有所帮助

2008-09-18

unix/linux常用命令的使用

最为常用的unix/linux命令的使用, 及其特别以及非常适用于新手

2008-09-18

awk使用手册,写shell的下载吧

awk功能强大,不会用AWK,别说自己会shell

2008-09-15

linux设备驱动开发

对于Linux驱动开发人员是必背的,很好的文挡~ 请大家积极下载~

2008-09-15

空空如也

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

TA关注的人

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