数字目录整理 最近遇到这种目录1.txt 2.txt 3.txt 4.txt ...100.txt 101.txt排序起来真麻烦。我的另一篇blog 快速修改顺序命名文件,有用shell做处理,无奈shell语法怪异,记不住又犯了CXY的毛病:重复造轮子!#!/bin/ruby# annidy 2014-6-11d = Dir.new(".")max = 0d.ea
iOS抓包全记录 iOS抓包全记录. iPhone端配置安装Cydia “OpenSSH Access How-To”。按引导完成安装,重启Cydia->管理,点设置为开发者;点搜索tcpdump,即可安装iPhoneTunnel(不安装也可通过ip连接,不过在仅局域网可用)下载 https://code.google.com/p/iphonetunnel-mac/打开运行。点击状态
解决 CGBitmapContextCreate: unsupported parameter combination 错误 苹果再一次调皮了。- (void)drawRect:(CGRect)dirtyRect{ CGRect bounds = [self bounds]; CGContextRef context = UIGraphicsGetCurrentContext(); CGColorSpaceRef space = CGColorSpaceCreateDeviceRGB();
NSLog对与错 作者:ani_di版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diNSLog对与错日志这个东西可以说每个开发者都在使用。在调试器不那么先进的时代,日志几乎是解决bug的唯一手段。即使到了今天,printf恐怕还是代码调试的首先方案。随着日志在代码中广泛使用,大家发现日志打印太多,要找到自己需要的很麻烦;另一方面,软件在发布后,不太喜欢
本地schemeApp扩展 作者:ani_di版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di本地schemeApp扩展iHasApp这个用过的话,大概知道我说的是什么了。schemeApp.json这个数据库里面只有scheme和appid,官方demo是使用appid到iTunes上查询完整信息,比如名字、图片等。 我写了点代码,到iTunes上抓了一些
庖丁解牛FPPopover 作者:ani_di版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di庖丁解牛FPPopoverFPPopover是一个实现Popover控件的开源项目,比标准控件要强大一些。虽然如此,但是在定制边框弹框时,还是遇到了问题:border=NO并且arrowDirection = FPPopoverNoArrow时多出了一个头。
ObjC逆向工程 ObjC逆向工程最近做iOS逆向的人是越来越多,什么公司火什么技术就越有人研究。想当年微软牛的时候,也被人翻个底朝天。这里只是分享一下个人心得。逆向ObjC写的代码,下面几个东西一定要必备。class-dump 查看类定义必备神器。ObjC也是一种比较动态的语言,一般来说动态语言的代码都比较容易分析,因为方法、类等信息都是字符串。如果有虚拟机,代码都有人能反编译出来(当然,这一
C模块回调Lua函数的两种方法 作者:ani_di版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diC模块回调Lua函数的两种方法lua和C通过虚拟栈这种交互方式简单而又可靠,缺点就是C做栈平衡稍微会多写一点代码。 今天分享学到的C模块回调Lua函数的两种方法,都是炒冷饭,大侠勿喷。1. C保存函数对象C模块可以通过注册表保存Lua里面的对象,等适当时候取出再
iOS/Mac OS X 汉字转拼音 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diiOS/Mac OS X 汉字转拼音网络流行的汉字转拼音方案是带一个拼音码表,速度快。其实Core Foundation也提供了一种方案,而且还带声调! NSMutableString *ms = [[NSMutableString al
App挂起、复原与终止[水帖] iOS的无缝挂起体验不错,虽说这种类似“休眠”的功能在操作系统上早已出现,当App挂起要求速度更快。讲解挂起的文章不多,大部分都是说明几个API。挂起相关方法(NSApplication delegate)– applicationWillFinishLaunching:– applicationDidFinishLaunching:– applicationShouldT
Lua获取网络时间 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diLua获取网络时间网络授时服务是一些网络上的时间服务器提供的时间,一般用于本地时钟同步。 授时服务有很多种,一般我们选择RFC-868。这个协议的工作流程是:(S代表Server,C代表Client)S: 检测端口37U: 连接到端口37S: 以32位二进制数发送时间
如何打开Nib文件 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di如何打开Nib文件有段时间没有灌水,今天分享一个小技巧。nib文件是Cocoa App的界面资源,代码中一般用xib代替了nib,因为这样方便版本管理。发布出去的仍然是nib,而且是编译后的nib,这种文件直接用xcode是不能被打开的。可以手工修改一下nib
Objective-C 函数参数汇编分析 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diObjective-C 函数参数汇编分析环境 Mac OS X 10.7.5,Xcode 4.3.2,64-bit,Debug,lldb先看三个简单的方法-(void)print { NSLog(@"0");}-(void)print:(NSStr
快速修改顺序命名文件 假设有一堆这样的文件hlool1.mv hlool2.mv hlool4.mv hlool6.mv hlool8.mvhlool10.mv hlool3.mv hlool5.mv hlool7.mv hlool9.mv怎样修改为下面的形式hlool01.mv hlool03.mv hlool05.mv hlool07.mv hlool09.mv
NSTimer中调用静态方法 Usually we schedule NSTimer like: [NSTimer scheduledTimerWithTimeInterval:2.0 target:instance selector:@selector(targetMethod) userInfo:nil
MacOS X 国际化学习笔记 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diMacOS X 国际化学习笔记资料来源 https://developer.apple.com/cn/internationalization/国际化会涉及那些修改Nib files (windows, views, menus)静态文本图标语音音频在线文档动
GCD杂感 以前谈到GUI的多线程技术,http://blog.csdn.net/ani_di/article/details/8654214。前面三种是非常老的技术,代码很多,而且容易出错。唯独最后一种GCD(中央调度),代码精简,理解容易。其实后面还可以加上NSObject的performSelector:– performSelector:withObject:afterDelay:– p
从dll构建lib 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di从dll构建lib利用lib来静态调用dll比传统的LoadLibrary要方便很多。有时候只有dll没有lib,但是我们还是有方法生成,下面是我的经验。(命令行操作,先自行进入VS的命令行工具)Step 1. 头文件如果有头文件请跳过。
Thinking about KVC/KVO 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diThinking about KVC/KVO1. 什么是KVC/KVOKVO:Key-Value Observing KVC:Key-value coding2. 如何使用Key-value由NSObject实现,因此所以ObjC的对象都可
在一个xib中添加多个Controller 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di在一个xib中添加多个Controller传统上,对于单个xib或窗口,我们都使用一个Controller做集中式管理。当窗口越来越复杂,内容越来越多。有必要拆分Controller,避免Controller过于臃肿。如何添加Controller给一个xib添
Objective-C协议浅析与使用 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_diObjective-C协议浅析与使用协议(Protocol)是ObjC 2.0新增的特性。它可以简单的理解为一组方法声明,而定义交给使用者去实现,与C++或Java中的纯抽象类相似。 以ObjC强大的动态性,没有协议同样可以达到类似的效果。使用协议有以下优势:* 显示声明
动态实例变量:解决脆弱的基类问题 原文链接:http://www.cocoawithlove.com/2010/03/dynamic-ivars-solving-fragile-base.html 作者:ani_di 版权所有,转载务必保留此链接 http://blog.csdn.net/ani_di动态实例变量:解决脆弱的基类问题在现代Objective-C运行时(iPhone OS或64位Mac OS X),你
GUI线程的异步并行设计 话说,GUI的异步处理确实是个难题。真实环境的异步除了不阻塞主线程刷新,更重要的是界面上常常有很多互斥的操作,需要对线程做更为细致的控制。原文连接 http://www.parallellabs.com/2013/01/21/multicore-and-asynchronous-communication/GUI线程的异步并行设计GUI线程是采用异步并行设计
一个使用STL::string时遇到的诡异bug 事情大致是这样的: 代码中用到一个局部string对象. 异常的是, 我还没给他赋值, 它的c_str()中已经有一些数据了.下面的代码模拟了这种情况#include #include using namespace std;void test(){ string s; memset((char*)s.c_str(), 'a', 10);}int
Nerver use NSNumber as keys in Dictionary when Serialize Nerver use NSNumber as keys in Dictionary when Serialize作者:ani di版权所有,转载请注明出处blog.csdn.net/ani_di如果你的NSDictionary中有包含NSNumber的Key,那么在序列化此字典时你会莫名其妙的失败。像这样 NSMutableDictionary* dic =
SendMessage 和 PostMessage 的区别 今日被问起SendMessage和PostMessage的区别,Win32 api的东西已经忘得差不多,但是网上一定能搜出来。http://hi.baidu.com/umu618/item/3cf984ffcff56bee1b111f05SendMessage 和 PostMessage 的区别1、首先是返回值意义的区别,我们先看一下 MSD
你以为你真的会计算进度吗? 现有一需求,计算拷贝文件的进度。假设已知文件总大小t字节,已拷贝了n字节。对于如此简单的需求,大多数人会第一时间这样实现int progress(int t, int n) { //已完成除以总大小 return n/t*100; }很抱歉,这样实现你将发现它会只有两个值——0和100。原因是,当一个整数除以另一整数,如果小于0,则 向下取整为0,0*100自然
Evasi0n Jailbreak's Userland Component 原文地址 http://blog.accuvantlabs.com/blog/bthomas/evasi0n-jailbreaks-userland-componentiOS 6.1 evasi0n jailbreakThe latest jailbreak is out, and it’s time to dissect it and document all the exp
Behind The Scenes Of The iPhone 5 Jailbreak http://techcrunch.com/2013/01/21/behind-the-scenes-of-the-iphone-5-jailbreak/Behind The Scenes Of The iPhone 5 JailbreakSARAH PEREZTechnically speaking, the iPhone 5 is already j
高级Vim寄存器 用Vim也很久了,翻译这篇有用的文章,大家共同进步。原文:http://blog.sanctum.geek.nz/advanced-vim-registers/高级Vim寄存器寄存器是Vim用于临时保存的地方。通常我们使用的是26个字母的命名寄存器。比如,要把一系列的 键盘操作记录到寄存器a中,你可能会使用qa,然后以q结束;下次重新操作这些击键记录使用@a。文
《技术领导之路:全面解决问题的途径》书摘 《技术领导之路:全面解决问题的途径》书摘身份证掉了怎么办?捡起来……更大的问题或许在于,你是否愿意(是否能)按部就班地去做。——许多事没有诀窍,在于坚持。鉴别人群中谁是领导的方法:询问大家,他们认为哪些人引导整个群体的影响力最大所谓领导力,就是创造这样一个环境,每个人都能在其中发挥出更多的能力。——或者指引方向领导力需要创建的环境 M:激励(motivation)--奖品或是磨难,用来激励
程序员的时间换算表 原文链接:Programmer Time Translation Cheatsheet -or- Why Programmers Are Bad at Estimating Times一个曾经与我一起工作过的经验丰富的项目经理声称,他拿到程序员的时间估算以后,先将它乘以π,转化下一个时间数量级后,才能得到真正的值。1天转化成3.14周。他过去因为程序员不擅长估算时间而吃尽了苦头。我
分享我的一个Chrome插件 公司最近每次登陆时,都要弹出一个安全检查的网页,十分蛋疼。按说关闭一个页面是比较容易的事情,在网上找了些浏览器插件的资料,还好以前学了些Javascript。三下五除二,写了个简单脚本,就几行代码。独乐乐不如众乐乐,分享给大家吧。下载地址下载地址2* 已知Bug:打开登陆页面后,不能创建新标签,需在登陆完成后才可以。
介绍一款python界面框架——“二胡” 拿Python做界面的案例不多,所以界面框架也不是很丰富。曾经用于Tkinter,怪异而且不灵活,Bug多多。本想来吐槽一下的,想想还是算了。今天看到的这个界面库是Console下的,类似于ncourse,叫做urwid,中文名“二胡”。相信接触过类unix的知道,unix偏爱纯字符界面,像emacs、vi什么的都是控制台上做的。有时程序很小,连文字界面都不想做,直接命令行。
探寻影响业务性能的隐形杀手——TCP Nagle算法、延迟确认及窗口大小故障分析案例 http://wenku.baidu.com/view/fbfda71aa300a6c30c229f99.html###
MacOS 10.7 VMware下连接iPhone系统蓝屏解决 最近10.6系统到10.7,出现了一个奇怪的问题:VMware虚拟机连接iPhone后系统蓝屏,windows xp和Win7都是如此,所以初步排除是系统问题。解决方法:修改VMware的USB设置,勾选USB2.0。
如何用xcode调试dylib 近日,需要在Xcode通过另一app来调试某dylib。此前采用的方法是新建一测试工程,再通过此测试工程单步进入后下断点。现在的情况是,有个界面app,但是没有源码,需要通过它来启动我们的dylib。在网上搜索多次无果,想起原来在vs下,调试dll可以手动指定运行的exe,想必xcode也有。找了下,果然也有。选择菜单 Product->Edit Scheme, 在Run 一栏中,
Writing Lock-Free Code: A Corrected Queue By Herb Sutter, September 29, 2008As we saw last month [1], lock-free coding is hard even for experts. There, I dissected a published lock-free queue implementation [2] and examined why the code
Lock-Free Code: A False Sense of Security By Herb Sutter, September 08, 2008Given that lock-based synchronization has serious problems [1], it can be tempting to think lock-free code must be the answer. Sometimes that is true. In partic
Modern C++ Design 繁体版勘误1 P34template class NiftyContainer{ ... typedef Select::Resault ValueType; ...};这段代码在编译时会出现下面警告,并且ValueType缺少类型说明符错误warning C4346: “Select::Resault" 依赖名称不是类型正确的写法是template
一道迅雷笔试题引发的思考?—— 不重复随机算法 csdn上看到的一帖子 http://topic.csdn.net/u/20120825/20/6171393d-15ea-4a50-ba30-78d1d24974e3.html,是关于一种不重复随机算法,可以计算0 ~ n中不重复的m个数。#include #include using namespace std;void knuth(int n, int m){ sr
让gcc和gdb支持intel格式的汇编 默认情况时,gdb和gcc输出的汇编都是AT&T格式的,但是它们都有方式来转换为Intel格式。gcc -S -masm=intel test.cgdb则是设置环境变量set disassembly-flavor intelgas事实上也支持Intel格式,只是用得比较少。AT&T和Intel差别本身就不大,只是大家在windows上弄久了后,可能有特别偏好。
Mac OS X 命令行调试工具 ToolDocumentationSummarygdbmanual page, Debugging with GDBCommand line debuggerdtracemanual pageDynamic, comprehensive and sophi
configure: error: C compiler cannot create executables 在一台10.7的系统上,装了Xcode 4.3.2。在编译某开源库时出现下面错误./configurechecking for a BSD-compatible install... /usr/bin/install -cchecking whether build environment is sane... yeschecking for gawk... nochecking fo
反调试技术 原文链接:http://www.cnblogs.com/killmyday/archive/2011/05/31/2063891.html在调试一些病毒程序的时候,可能会碰到一些反调试技术,也就是说,被调试的程序可以检测到自己是否被调试器附加了,如果探知自己正在被调试,肯定是有人试图反汇编啦之类的方法破解自己。为了了解如何破解反调试技术,首先我们来看看反调试技术。
OllyDbg调试iTools 【本文仅限技术交流,无其他目的】调试版本 iTools 2012 Bata (0523) 1. 初次使用时,发现iTools会把我的OllyDbg关闭,IDA也不能幸免,看来它已经做了反调试的工作了。通过Process Explorer观察,发现他会每隔几秒钟启动一个线程,初步怀疑是这个线程引起的。在IDA中搜索一下TerminateProcess的引用,在附近发现了Proce
iphone实用小技巧 原文链接:http://www.laifuer.info/archives/1364iphone4隐藏了很多的秘密,大家都知道吗?25条iphone4的隐藏秘密功能,让你更加容易的驾驭iphone40.无送话器的耳机插在iphone上也能正常接听电话1.用iphone自带浏览器上网看视频时,可以将2只手指放在视频《注意是放在视频框内》上,就可以控制全屏和宿屏。《和控制图片动
MobleySync protocol by libimobiledevice.orgiDevice Sync Protocol OverviewTerms/Definitions:Data Class: One of the supported data classes.RecordEntity: RecordEntities define a record's data fields. A data
iPhone Hacker Links The iPhone Dev Wiki (Mirror) - A mirror of the site that started it all for me. Lots of great technical information and history there.The Hackint0sh iPhone Forums - Started up around the same ti
iPhone Backup information/note http://keepmurmuring.blogspot.com/2009/06/iphone-backup-informationnote.htmlFolder location ~/Library/Application Support/MobileSync/BackupFileInfo.plistEach device's Info.plist file
ln: Too many levels of symbolic links 使用ln创建链接时,参数source的写法很重要。如果source与target不是在同一目录,那么source的路径应该使用显示路径,否则会出现Too many levels of symbolic links错误。举例来说ln -s 1.txt t2/1.txt # errorln -s ./1.txt t2/1.txt # okcd t2ln -s
未加载ntdll.dll符号导致调用栈信息丢失 近日,在调试某一dump文件时,指定并load了自己dll的pdb文件,但是仍然没能看到相应的调用栈信息。崩溃线程显示的调用栈如下 ntdll.dll的符号没有找到,但为什么它要中间隔开,后面又显示ntdll.dll?当时没有在意,偶然间,在另一台机器通过windbg调试,没想到显示了完整的调用栈,逐怀疑就ntdll.dll的符号引起的,因为windbg有自动连接到微软的符号
趣题 do while continue 下面的代码输出时多少?main(){ int i = 0; do { i++; if ( i < 3) continue; } while(0); printf("%d", i);}答案:1很多人认为,continue语句是跳转到循环的起始位置重新开始。但是,对于do ...
A Quiz About Integers in C 本文根据 http://blog.regehr.org/ A Quiz About Integers in C 整理而成Q1:表达式 1 > 0 的值是?A)0B)1C)undefinedA1: B。这是热身运动Q2:表达式 1U > -1 的值是?A)0B)1C)undefinedA2:A。无符号与有符号比较时,有符号的会转换为无符号。
Release版本的调试 截取自《游戏之旅——我的编程感悟》P311, 作者:云风PS:最近在项目中正好遇到一个release版本在测试部门崩溃了,正好拿来练手。由于是第一次,折腾了一个多小时才定位到问题。这里去把一些心得写下来。1、崩溃时,windows会弹出一个对话框,告诉你哪个地址发生了什么样的错误。通常这还不够,dump文件更有用。dump文件生成的方法有很多,可以用代码,xp下有Dr.Watson
让 win32 程序也可以从 console 输出信息 平日里写的代码都是用控制台自测, 然后封装成dll给界面用. 开始比较懒,没有用到日志,直接用printf代替的. win32程序调用后就看不到printf的输出,比较郁闷.后来看到风云的一篇文章 http://blog.codingnow.com/2007/01/win32_console.html . 发现原来win32也可以用重定向. 简单的说,假设test.exe就win32程序,
iPhone下主要的目录的意义 目录/文件位置目录/文件意义/var/mobile/Media/PhotoData/var/mobile/Media/Photos图库目录/var/mobile/Library/AddressBook通讯录/var/mobile/Library/Calender日历/var/mobile/Library/SMS
每个程序员都应该知道的福利 HR是专门负责谈薪资的, 当我们跟HR讨价还价的时候, HR会介绍公司有的福利,而回避公司没有的福利。 作为程序员,我们一定要对跟我们利益息息相关的各种福利细节了如指掌, 各项福利都要跟HR询问清楚,才能比较公司之间的总体福利。 同时还需要掌握些技巧,别让我们的利益会受到损害。眼下正是年后跳槽的黄金时期,园里的大牛小牛拿了去年的年终奖后,有些肯定想给自己加点工资。园里的大牛小牛都是
跨平台C/C++开发的总结 跨平台的代码最好是在写的时候就已兼顾到多平台,即编写和调试分别在两个平台上同时进行。如果是先在一个平台开发后再来做移植,工作量可能会大很多。这种移植可能会用到很多重构方法,假如你没有很好的单元测试流程,那么大规模的重构将很有可能引入bug。 在两个平台同时开发并不困难。首先,你最好能找到在这些平台都可以使用的工具,vim+makefile是个不错的选择,缺点是gdb的调试不是很方便。因此
Fix Bug of mux_redux in ssh-rd The msftguy's ssh-rd(https://github.com/msftguy/ssh-rd) is a useful tool to make iOS ramdisk. It also contain a module usb-mux, it's independent and can be reuse. But there is a little bug in it.
统计代码行的shell find . | egrep cpp$\|c$\|h$ | xargs cat | wc -l自个用,不是那么精确,但也能统计出个大概。修改一下,过滤空行find . | egrep cpp$\|c$\|h$ | xargs grep -v '^$' | wc -l
64位机器忽略警告引起严重问题 最近在调试时遇到一个指针问题,百思不得其解。直到搜索了下面这条警告才找到问题的原因。warning: assignment makes pointer from integer without a cast原以为是参数传递的问题,仔细检查,原来是返回值。那段代码在32位机上没问题,到64位就出事了。请看:// main.c main(){ void* c =
简易C/C++日志 C/C++没有标准的日志库,很多人使用printf直接代替。但它有个缺点,就是不能对输出信息进行分级控制。使用log4cpp等似乎太重量级了。这里我给一个我自己经常使用的几个简单的日志函数#include #if defined(DEBUG)#define debug(...) {fprintf(stderr, __VA_ARGS__); fflush(stderr);}#else
预处理器简介 预处理器 预处理是C编译器做的第一件事情,主要是做一些文本方面的工作。包括:删除注释、插入被#include包含的文件、定义和替换由#define指令定义的符号以及代码的部份内容,和条件编译。预定义符号 预定义符号如下表所示:__FILE__进行编译的文件名__LINE__文件的当前行号
64位C++编程课堂 本系列为http://www.viva64.com/en/l/的学习总结Lessons 1. What64-bit system are目前有2种最流行的64位处理器架构:IA64和Intel 64。IA64即通常所说的安腾,主要用于Sun的服务器上;而Intel64则是与x86兼容的,本文主要讨论这种。 x86-64有以下优点l 64位寻址空间,
Windows中的管道解析 具体来讲,Pipe是一种POSIX规范,在不同系统上都有实现。msvcrt提供了_pipe这个函数。但是,它的实现是基于CreatePipe,这是无庸置疑的。这种非标准(带下划线)的C函数,在CRT中的很多。比如_open返回的文件指针FIFL*,很多时候我们都没有注意到,它几乎等同于CreateFile传回来的HANDLE。在Windows核心编程中,我们知道,每个进程有一个句柄表。创建子进程时
Python 中不常见builtinfunction property([fget[, fset[, fdel[, doc]]]]) 调用此函数会返回一个对象,每次你__get__, __set__, __delete__, __doc__此对象时,都会调用fget, fset, fdel和doc。这是数据装饰器(discriptor)的一种方便的实现方法。当然你也可以子类化某个类型,实现__get__等方法也是可以的,只是这样会麻烦很多。
Readline 快捷键 readline对于我等长期使用命令行的程序猿来说,实为加快输入速度之利器。下面就来一起领略它的强大之处。1. 移动光标。如果你还在使用←和→来移动,那么就有点老套了。试试下面几个Ctrl-b 向左移动一个字符Ctrl-f 向右移动一个字符Alt-b 向左移动一个单词Alt-f 向右移动一个单词 按单词移动比按字符移动快多了。有的时候我们要在一串很长的命令头和尾移动,
划清代码职责 错误是具有传染性的。有时一个模棱两可的处理,可能在将来某个时间就会触发更为严重的问题。比如,下面的代码(来源于真实项目)for (it = vec.begin(); it != vec.end();){ if (dosomething(*it) == TRUE) it = vec.erase(it); else it++;}如果dosom
Linux文件系统FAQ Linux文件系统FAQ2010年03月25日 最近实验室搞了一些列讲座,阿福师兄关于文件系统的讲座帮我弄清楚了一些以前不清楚的问题,以问答的形式对文件系统常见的问题进行了总结。 Q: 文件系统如何看待底层物理块设备? 文件系统把块设备简单的看做线性的组合,即对文件系统而言,块设备是一系列可以读写的块。文件系统不需要知道这些物理设备的实际布局及如何
iTunes 10 选择自定义IPSW 在用iTunes Restore时,以前的版本按住shift键再点击Restore时,会弹出“Open File"窗口,这时就可以选择自己的IPSW了。而iTunes 10以后这种方法就没用了,但是也不是没有办法的。首先,iTunes会检查最新的版本,然后再下载。考虑国内网络较慢,完全下载下来要很久。其实可以把最新的IPSW用别的方式下载,然后放在下面的目录Mac OS X: ~/
Unix调试利器之——gdb jump 在调试时有时不小心跳过了某个函数,又不想重新运行一遍。简便的方法是直接把PC寄存器的值设到前面位置。但是,通常情况下,我们不知道其PC的位置。这时我们需要j(jump)命令。jump 行号jump 位置行号可以是:1.数字;2.(+/-)偏移;3.文件名:行号;位置可以是:1.函数名;2.文件名:函数名;3.*内存地址;jump命令类似于C语言的goto,是比较强硬的跳
Tutorial – Installing gcc compiler on iPhone http://eagos.net/tutorial-installing-gcc-compiler-on-iphone/comment-page-1/#comment-31This Tutorial needs headers and libraries from Mac OSX.Make sure the following applications are instal
Unix调试利器之——内存断点 内存断点又称为“数据断点”,貌似vs是从2008才开始有的,gdb出现得比较早。gdb的内存断点又称之为Watchpoint,它可以监视:某个变量的值某个地址所指向的数据。例如, `*(int *)0x12345678'会监视它指向的4字节数据。任一复杂的表达式,比如 `a*b + c/d'。设置watchpoint的命令是watch,格式是watch [-l|-locat
Unix调试利器之——lsof lsof全称为"list open file"(列出打开文件)。除了调试程序外,我们也可以来解决一些日常问题,比如删文件时提示正在被使用;把设备时无法弹出等。现列出几个比较常用的操作列出所有打开的文件# lsof数量会有点多,自己慢慢grep找到谁的使用某个文件# lsof /path/file这个在查找具体文件时有用递归查找某个目录
转载一个无依赖的linux的list.h头文件 /** * * I grub it from linux kernel source code and fix it for user space * program. Of course, this is a GPL licensed header file. * * Here is a recipe to cook list.h for user space program *
sshpass: 用于非交互的 ssh 密码验证 [撰文/Zhang Huangbin (michaelbibby AT gmail.com)]OpenSSH 自带的 ssh 客户端程序(也就是 'ssh' 命令)默认不允许你以非交互的方式传递密码,如:ssh www.iredmail.org Shell 里这样的输入重定向使用得非常普遍,而且通常都工作得很好。但是 ssh 不允许这样的方式来传递密码,所以需要远程连上服务
通用makefile scons虽然简单且跨平台,但内部隐藏了太多细节。Make相对清爽些。然而每次都写makefile有点嫌麻烦,网络上也流传很多通用makefile。今天特找来一个,分享之####################################### Copyright (c) 1997 George Foot (george.foot@merton.ox.ac.uk)# All rig
curl使用简介 Curl是一个很强大的http命令行工具,其功能十分强大。1) 二话不说,先从这里开始吧!$ curl http://www.yahoo.com回车之后,www.yahoo.com 的html就稀里哗啦地显示在屏幕上了 ~2) 嗯,要想把读过来页面存下来,是不是要这样呢?$ curl http://www.yahoo.com > page.html当然可以,但不用这么
360阻碍手动修改注册表 今日,在使用regedt32修改注册表 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 下的项里,遇到一个很诡异的问题:可以创建或修改,但不能删除,而该项的权限设置里又有当前用户删除的权限。Google之发现有人也遇到此问题,有可能是360禁止了。可以我没有打开360也这样?!早听说360已做到驱动级别,即使不运行
数据恢复/电子取证 非常有用的python库——Construct 和硬盘打交道,不免会用到字节、大\小端对齐、结构等。C语言定义了很多类型,我们定义一个结构,配合mem***函数、大小端转换宏等几乎可以应付了。Python就没那么好用了,因为它本身也不是为这种低级操作而设计的。处理这种二进制数据,貌似只有struct库能沾上一点边,它用起来像printf,数据一多就会把你搞晕的,它还有几个致命缺点:1. 不支持小于1个字节的;2. 数据格式固定。总的来说,它的扩
整数序列的质数生成方法 判断一个数是否为质数,常采用的的方法是取取该数的开方a, 如果从2-a中都不能整除,那么该数为质数。程面中,通常会让你计算某个范围内所有的质数。把上面的公式写成一个函数,然后一个一个判断是传统的解决方法。不过,质数还有一条重要性质 不能被小于它的平方根的所有质数整除就是质数。我们可以利用已找到的质数来判断当前数是否为质数,这样可减少一些不必要的计算操作。代码示例i
jpg修复小代码 最近为客户修复损坏的jpg写的,效果还可以,但不保证适用任何情况。如果你有损坏照片,不妨试一试,如果可以使用给我留个言哦。# -*- coding: utf8 -*-# !/usr/bin/env python__author__ = 'fengxing'__date__ = '2012-1-18 20:13'import sysdef jpgfix(name):
Network File Copy using SSH 原文:http://ultra.ap.krakow.pl/~bar/DOC/ssh_backup.htmlNetwork File Copy using SSHUpdated February 20, 2003Created April 23, 2001Please note that &&, ||, and -, are documented at the bot
Install PIL on mac I was used 'easy_install PIL' to install Python Imaging Library (PIL) on mac x 10.6, but it failed when I import PIL.so I use 'port install py26-pil', after a long time wait, it's dosen't work aga
解决SVN各种冲突的终极大法 我们在使用svn时,如果删除了.svn目录,那么在下次更新或提交时会出现错误,这时它会提示你cleanup。不过这时你最好把这个目录revert。svn删除目录或文件都应该用svn del来做(包括重命名),否则必然引发错误。如果遇到各种错误,每次cleanup又解决不了,不要再尝试了,用终极方法:重新check out, 再把修改的文件拷贝回去,提交。
JavaScript - The Definitive Guide Read Log 6 Chapter 14. Scripting Browser WindowsTimersJS本身没有提供任何有关任务调度的方法,但client-side JavaScript提供了几个全局函数(定时器)setTimeout() 对象在一定时间后执行clearTimeout() 取消上面的计划任务setInterval() 同上,但是重复执行clearInterval() 同上
JavaScript - The Definitive Guide Read Log 5 Chapter 11. Pattern Matching with Regular Expressions创建正则表达式有两种方法:1. var pattern = /s$/;2. var pattern = new RegExp(“s$");关于正则表达式的语法,这里不做多写。JS的正则表达式还可以加上一些flag-------------------------
VC+Boost静态库编译问题、解决方法 通常来说,在大项目里,用动态链接比静态链接体积要小,缺点就是要带上一个crt库。windows现在又引入了manifest,可以指定crt的版本号,这样对于向上兼容是个不错的方法。如果作为单独的库发布,那么带上crt可能不太现实,因为它们确实不小。所以需要用静态链接。gcc静态连接很方便,只需要把相应的.a文件加入即可。vc2010需要将/MDd改为/MTd。虽然是这样,但如果使用了别人的
Code Like a Pythonista: Idiomatic Python 笔记 Code Like a Pythonista: Idiomatic Python如果你有C++基础,那学习另一门语言会相对容易。因为C++即面向过程,又面向对象。它很底层,能像C一样访问机器;它也很高级,有模板、STL等。如果认真读过《深入C++对象模型》,我想其它语言不会比这个更复杂。你对C++了解的越深,你用其它语言写出的代码就越像C++,这样就体现不出新语言的价值了。所以,学
Python Idioms and Efficiency 又一篇关于Python Idioms的文章,原文:http://bayes.colorado.edu/PythonIdioms.htmlPython Idioms and Efficiency 1/28/07Written by Rob Knight for the Cogent projectTable of ContentsWhat idioms should I use
生成随机的GUID的C代码 随手写的,生成几个GUID有用,大规模用就不好说了。/* annidy@gmail.com */const char* newGUID(){ srand(time(NULL)); static char buf[64] = {0}; snprintf(buf, sizeof(buf) , "{%08X-%04X-%04X-%04X-%04X
跨平台开发慎用中文注释 目前,各个平台的编辑器对编码格式支持很好,但编译器似乎没那么好。比如,前段时间在Mac上写了一段代码 ubalog_out_log(log1, log2); // 写入log到另一log中 ubalog_log(log2);保存格式为utf8,工作没问题。移植到Windows上一切正常,VS2010编译也没错误。但是是运行时,怪异的是第2行没有执行!我一度怀疑是VS出问题
MySQL在MacOS上的安装记录 1.到网上下载安装dmg ftp://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-5.5/mysql-5.5.19-osx10.6-x86_64.dmg2.解压,依次安装mysql-5.5.19-osx10.6-x86_64.dmg和MySQLStartupItem.pkg3.启动服务。~$ sudo /Library/StartupItems/MyS