摘要: 假如汇编语言要实现如下C语言的功能,编译环境Ubuntu14.04(32位)。#includeint refact(int n){ if(n == 1) return 1; else return n * refact(n - 1);}int main(){ ... 阅读全文
posted @ 2015-02-04 22:35 Ydoing 阅读(381) 评论(0) 推荐(0) 编辑
摘要: 假如汇编语言要实现如下C语言的功能,编译环境Ubuntu14.04(32位)。#includeint fact_for(int n){ int i; int result = 1; for(i = 2; i <= n; i++) result *= i; ret... 阅读全文
posted @ 2015-02-03 22:09 Ydoing 阅读(667) 评论(0) 推荐(0) 编辑
摘要: 假如汇编语言要实现如下C语言的功能,编译环境Ubuntu14.04(32位)。#includeint main(){ int a[] = {3, 0, 5, 1, 4, 6, 2, 9, 8, 7}; int i; for(i = 0; i< 10; i++) pri... 阅读全文
posted @ 2015-02-03 21:49 Ydoing 阅读(1199) 评论(0) 推荐(0) 编辑
摘要: 以下代码示范交换a和b两个整数的函数,编译环境Ubuntu14.04(32位)假如要实现以下C代码#include void swap(int *xp, int *yp){ int x = *xp; int y = *yp; *xp = y; *yp = x;}int... 阅读全文
posted @ 2015-02-03 21:36 Ydoing 阅读(555) 评论(0) 推荐(0) 编辑
摘要: 以下代码示范a和b两个整数相加,编译环境Ubuntu14.04(32位)。代码.section .data a: .int 10 b: .int 20 format: .asciz "%d\n".section .text.global _start_sta... 阅读全文
posted @ 2015-02-03 21:11 Ydoing 阅读(650) 评论(0) 推荐(0) 编辑
摘要: 本文以printf为例,详细解析一个简单的printf调用里头,系统究竟做了什么,各寄存器究竟如何变化。环境:linux + gnu as assembler + ld linker如何在汇编调用glibc的函数?其实也很简单,根据c convention call的规则,参数反向压栈,call,然... 阅读全文
posted @ 2015-02-03 20:59 Ydoing 阅读(4503) 评论(0) 推荐(0) 编辑
摘要: 任务的定义大多数并发程序都是围绕任务进行管理的.任务就是抽象和离散的工作单元.任务的执行策略1.顺序的执行任务这种策略的特点是一般只有按顺序处理到来的任务.一次只能处理一个任务,后来其它任务都要等待处理.响应性很糟糕,吞吐量低.系统资源利用率低.2.显示的为任务创建线程为每个任务创建对应一个线程,响... 阅读全文
posted @ 2015-01-29 17:06 Ydoing 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 一、概述 1、我们的memcache客户端(这里我看的spymemcache的源码),使用了一致性hash算法ketama进行数据存储节点的选择。与常规的hash算法思路不同,只是对我们要存储数据的key进行hash计算,分配到不同节点存储。一致性hash算法是对我们要存储数据的服务器进行hash计... 阅读全文
posted @ 2015-01-28 14:01 Ydoing 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 在测试接口过程中,有时我们希望知道自己期望传入的参数是什么,以此来判断传入参数的正确行,这时就需要用到EassyMock的capture方法.该方法能捕获传入的参数存放到自定义的变量中,然后用捕获的参数与期望的参数进行对比,从而判断调用接口时使用的参数是否正确.下面用例子演示一下:要测试的接口p... 阅读全文
posted @ 2015-01-28 11:51 Ydoing 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 虽然easymock中提供了大量的方法来进行参数匹配,但是对于一些特殊场合比如参数是复杂对象而又不能简单的通过equals()方法来比较,这些现有的参数匹配器就无能为力了。easymock为此提供了IArgumentMatcher 接口来让我们实现自定义的参数匹配器。 我们还是用例子来说话:要测... 阅读全文
posted @ 2015-01-27 15:26 Ydoing 阅读(670) 评论(0) 推荐(0) 编辑