自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

享受开发,颠倒银河

成功和未成功有时只差一次坚持!

  • 博客(20)
  • 资源 (8)
  • 收藏
  • 关注

原创 gdb中的define命令

可以使用define命令达到类似于display的效果:比如每ni后显示当前5条指令: define s5 ni x/5i $pc end甚至可以手动传入要显示指令的条数: define s ni x/arg0iarg0i pc end然后这样使用:s 5我们还可以再加点料,ni后自动显示某些reg的值: define s ni printf “r

2015-04-19 16:29:23 1771

原创 javascript、ruby和C性能一瞥(3) :上汇编

在博文(1)和(2)里分别用了4中方式写一个素数筛选的算法,分别是javascript in browser、node.js、ruby和c;最终的结果是c最快,node.js其次,js in b虽然也不慢,但极不稳定,所以排在第三,ruby最慢。现在我们在linux64中用汇编语言重写sieve算法,看看动用最终的武器:汇编语言,我们能不能进一步优化素数筛选算法。如果忘了算法逻辑,不要紧,下面分别再

2015-04-16 09:42:22 1815

原创 Mac OS X下64位汇编与Linux下64位汇编的一些不同

1 首先系统调用号大大的不同;mac64和linux32的系统调用号也不同(虽然局部可能有相同)2 mac64的系统调用号在:/usr/include/sys/syscall.h可以查到,但是调用的时候其值要加上0x2000000,可以写一个宏处理:%define mk64 0x2000000+使用方式如下:mov rax,mk64 1 ;exit NOmov rdi,0

2015-04-13 18:08:01 4086 7

原创 Mac OS X版本的sublime text 3安装汇编语言语法支持

sublime是个好东西,小巧、功能强大而且跨平台! 不过默认的语法里没有对asm的支持,这让本猫情何以堪… 下面介绍一下Mac OS X中如何给sublime安装汇编的语法和自动汇编命令补全支持。1 首先要找到sublime的Packages的安装目录,可以在sublime程序菜单中找到Packages的目录: 我系统中的目录为:/Users/apple/Library/Applicat

2015-04-13 15:23:50 11715 7

原创 linux下64位汇编的系统调用(5)

看到这里大家都基本知道了如何进行linux下的汇编系统调用;不过有些童鞋可能会问:那些C库中函数里为我们解决的额外汇编代码你是怎么知道的? 好吧,我承认:我是通过逆向知道的,这貌似有点犯规的嫌疑… 比如举个例子,那上一篇里的mmap C库函数来说,首先写一个C代码:#include <stdlib.h>#include <stdio.h>#include <stdbool.h>#inclu

2015-04-12 10:33:37 1841

原创 linux下64位汇编的系统调用(4)

经过上一篇的铺垫貌似可以很轻松的用汇编写出mmap的代码来,可仔细一看,还是有不少问题需要解决:1.系统调用mmap如果出错并不直接返回MAP_FAILED(-1),而是一个“类似”值;C库中的mmap函数对其做了包装,使其最终返回-1;如果我们直接调用mmap syscall,则这些事必须自己来做。2.C库函数如果出错会设置errno的值,而在汇编中没法直接用:extern errno的方法使用外

2015-04-12 10:12:47 2697

原创 linux下64位汇编的系统调用(3)

背景知识基本交代清楚了,下面我们实际写一个小例子看一下。代码的功能很简单,显示一行文本,然后退出。我们使用了syscall中的write和exit调用,查一下前面的调用号和参数,我们初步总结如下:write(即sys_write)调用号为1,需传递3个参数unsigned int fdconst char *bufsize_t countexit(sys_exit)调用号为60,只需传递一个错误

2015-04-12 09:50:03 2729 1

原创 linux下64位汇编的系统调用(2)

知道了syscall调用号之后还不算完,还要搞清楚2件事:1 每种调用号需要传递哪些参数; 2 调用如何传递参数以及结果如何返回;第一个问题的答案是: 在linux系统中某个程序执行时进行的系统调用可以通过strace命令来查看,solaris中对应的命令为dtrace,而mac os x中可以通过类似的dtruss命令来查看。当进程已经处于 D 状态(uninterruptible sleep

2015-04-11 20:19:30 4487

原创 ubuntu下如何安装codeblocks集成开发环境

codeblocks是一个十分优秀的C/C++开发IDE,虽然后起之秀codelite目前来看大有超越之势哦。 不过在ubuntu下安装codeblocks却比较麻烦,不像其他linux发行版,比如suse,debian和fedora等在官网上有现成的bin文件可以直接下载安装。 下面简单介绍下如何在ubuntu下快速安装最新的codeblocks:1.加入ppa源:sudo add-apt-r

2015-04-11 19:29:16 4169 6

原创 linux下64位汇编的系统调用(1)

现在基本上系统都是64位了,而64位系统下的汇编和32位有了较大的变化,无论是系统调用的接口还是C标准库的接口都和32位汇编有所不同;下面简单谈一下在64位linux下如何利用汇编直接调用系统调用。需要准备的有:1.一台linux机器:我的系统是ubuntu 14.10 x64版; 2.还要一个汇编器;我没有使用gas,而是使用了跨平台的nasm; 3.一个调试器;这里选择的不多,要不就是gdb

2015-04-11 19:05:47 4378

原创 nasm预处理器(4)

nasm定义了一套标准宏,当开始处理源文件时,这些宏都已经被定义了,如果希望程序在执行前没有预定义的宏存在,可以使用%clear清空预处理器的一切宏。__NASM_MAJOR__ 主版本号 __NASM_MINOR__ 次版本号 __NASM_SUBMINOR__ 子次版本号 __NASM_PATCHLEVEL__ 补丁号 __NASM_VERSION_ID__ nasm版本id __NA

2015-04-07 15:24:51 1103

原创 nasm预处理器(3)

nasm提供一个限定符.nolist,可以包含它到一个宏定义中,这样该宏就不会在列表文件中被展开;限定符 .nolist直接放到参数后面:%macro foo 1.nolist条件汇编 和C预处理器类似,nasm允许对一段源代码只在某特定条件满足时进行汇编:%if<condition>%elif<condition2>%else%endif%ifdef和 %ifndef 测试单行宏是否存在,

2015-04-07 14:05:10 1214

原创 nasm预处理器(2)

多行宏 %macro:%macro foo 2 push rax push rbx mov rax,%1 mov rbx,%2 pop rbx pop rax%endmacro宏名称后的数字代表宏参数的个数,宏主体中的%1和%2分别代表实际的参数。使用如下方式调用:foo 0x11,0x22如果宏参数中包含,号,可以将参数用{}包围起来。%macro

2015-04-07 11:53:13 1097

原创 nasm预处理器(1)

与处理器将所有以反斜杠结尾的连续行合并为一行。单行的宏以%define来定义;当单行的宏被扩展后还含有其他宏时,会在执行时而不是定义时展开。%define a(x) 1+b(x)%define b(x) 2*xmov ax,a(8)会被最终展开为mov ax,1+2*8,但宏b不是在定义宏a时展开的。%define定义宏是大小写敏感的,可以用%idefine来定义大小写非敏感的宏。 如果有嵌套

2015-04-07 10:46:19 1209

原创 nasm中的表达式

nasm表达式支持2个特殊的记号 $和$$;前者标识其所在源码行的开始处地址,所以你可以这样写死循环:jmp $而后者标识当前段开始处的地址,你可以通过:$-$$找出当前代码在段内的偏移。 nasm提供以下运算符: | ^ & << >> + - * / //(带符号除) % %%(带符号模) 因为%符号也被宏预处理器使用,所以必须保证带符号和无符号的模操作符都必须跟有空格。- +(一元+和

2015-04-07 10:07:38 1218

原创 nasm汇编一些需要注意的地方

经常用msam或tasm的童鞋一下转换到nasm下可能觉得不怎么适应,它们应该先去晓习一下gas的语法,然后就适应了…that‘s only a joke! :)section .datav101 dq 0x1234567811223344;代码中有mov rdx,[v101]mov [rax*2],rdx看一下生成的机器指令:0x4000b0 <_start>: 0x4000ba <_sta

2015-04-07 09:28:04 2702

原创 Mac OS X汇编语言常识

首先OS X的syscall表位置在/usr/include/sys/syscall.h

2015-04-06 21:16:23 5933

原创 linux中syscall调用号查看

可以用locate查找:locate unistd_32//或者locate unistd_64以下是本猫在ubuntu下返回的结果:/usr/src/linux-headers-3.16.0-33/arch/sh/include/uapi/asm/unistd_32.h//和/usr/src/linux-headers-3.16.0-33/arch/sh/include/uapi/asm/

2015-04-06 11:27:40 4260

原创 javascript、ruby和C性能一瞥(2)

好吧,最后让我们用C来实现,看看再能榨取多少性能。注意我没有改变算法,C的算法和之前的3种都是基本相同的:#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#include <math.h>#include <string.h>#include <time.h>#include <unistd.h>typedef unsig

2015-04-01 17:42:24 1646

原创 javascript、ruby和C性能一瞥(1)

测试一下本地js、浏览器中的js以及ruby对于类似算法的性能。结果有些意外:浏览器js最快,本地其次当相差很小;ruby最慢而且不是一个数量级的; 因为写的匆忙,可能有重大问题没能看出来,请各位高人不吝赐教。 代码均未作优化,我们依次来看: 首先是浏览器的:<!DOCTYPE html><html><head> <title>sieve suanfa</title> <s

2015-04-01 15:50:48 1344

SwiftUI 超酷炫动画示例大合集

资源简介 本资源包含了秃头码农们“不敢想象”的 SwiftUI 各种酷炫动画合集代码。 每个示例单独放在一个项目中,且都包括各种动画参数可调的预览,方便小伙伴们在 Xcode 预览进一步的理解、完善甚至改进! 大家可以从这些惊艳的动画效果中学到不一样的体验和知识,如果用到自己的 App 中那将会大放异彩! 动画列表: ├── Animations │   ├── 3dLoader │   ├── AddView │   ├── Bank Card │   ├── BookLoader │   ├── Cart │   ├── ChatBar │   ├── CircleLoader │   ├── DownloadButton │   ├── GithubLoader │   ├── InfinityLoader │   ├── LightSwitch │   ├── Like │   ├── Loader │   ├── Loader2 │   ├── LoginView │   ├── Octocat-Wink │   ├── PillLoader │   ├── 更多...

2024-01-08

MacOS 和 iOS 内核 xnu 可编译源代码

资源简介 XNU内核是Darwin操作系统的一部分,用于macOS和iOS操作系统。XNU is an acronym for X is Not Unix. XNU是一个混合内核,它将卡内基梅隆大学开发的Mach内核与FreeBSD的组件和用于编写称为IOKit的驱动程序的C++API相结合。 XNU在x86_64上运行,用于单处理器和多处理器配置。 文件列表: ├── APPLE_LICENSE ├── EXTERNAL_HEADERS ├── Makefile ├── README.md ├── SETUP ├── bsd ├── config ├── doc ├── iokit ├── libkdd ├── libkern ├── libsa ├── libsyscall ├── makedefs ├── osfmk ├── pexpert ├── san ├── security ├── tests └── tools

2024-01-08

SwiftUI 示例 iFonts 应用完整项目源代码

内容概要 本资源包含 iFonts 应用示例完整项目代码,全部用 SwiftUI 实现。 其中内容包括但不限于: - iOS 中各种字体的列举和展示、SF Symbols 图形字符的列举和显式; - 每种字体各种变形的展示; - SwiftUI TabView、List 等视图的使用代码; - 平铺或按组显示 SF Symbols 图形字符的切换演示; - 在最新的 iOS 17 上测试通过; 文件列表: ├── iFonts │   ├── AppDelegate.swift │   ├── Assets.xcassets │   ├── Base.lproj │   ├── Ext&Test │   ├── Info.plist │   ├── Model │   ├── Preview Content │   ├── SFSymbolNames │   ├── SceneDelegate.swift │   └── View └── iFonts.xcodeproj ├── project.pbxproj ├── project.xcworkspace

2024-01-08

SwiftUI 各种界面、自定义视图、动画以及设计哲学示例合集

内容概要: 本资源代码包罗万象 SwiftUI 入门以及进阶知识的代码示例。每个示例用独立的项目承载让大家可以集中注意力学习 SwiftUI 妙不可言的各种特性。 示例合集包括但不限于: - SwiftUI 界面定制和调整; - SwiftUI 原生视图、容器、自定义视图的使用和组合; - SwiftUI 动画加持; - SwiftUI 基本概念、设计理念以及哲学的示例融合; 内容包括: ├── Adaptive-Views ├── App-State-In-SwiftUI ├── Blending ├── Button-Styles ├── Composing-SwiftUI-Views ├── Content-Friendly-Layouts ├── Custom-SwiftUI-Styles ├── Displaying-Text-SwiftUI ├── Flexible-SwiftUI ├── Hashable-Bindings ├── Hierarchy-List ├── Identifiable-Navigation ├── // 更多示例项目

2024-01-08

SwiftUI 英雄动画(HeroAnimations)演示代码

内容概要: 本示例代码包括 SwiftUI 中详细的英雄动画(HeroAnimations)演示、各种附加动画效果。 所谓“英雄动画”是一种让不同 SwiftUI 视图平滑过渡转变的动画效果,就像英雄一样吸引用户的眼球! 其中还包括本人自己领悟而写出的附加测试代码。 让您更加直观和更感性的读懂示例核心逻辑。 您将学到以下内容: - SwiftUI 2.0 中惊艳的英雄动画(HeroAnimations)效果; - 英雄动画如何应用到同一和不同视图中的各个元素中去; - 英雄动画不同的附加特效介绍 - 本人写的更直观和简洁的测试代码; 其中包括文件: - 完整演示示例项目 - Readme文件 - 直观演示英雄动画效果的视频文件 - 本人写的测试(Test)代码

2024-01-08

iOS 15.4 真机调试支持包(可支持最新的iOS 15.4.1系统)

请将下载后的zip文件解压后放入如下目录 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 重启Xcode,重新连接iPhone以应用新的调试支持文件

2022-04-03

SwiftUI编程实现不同TabView标签页中任意导航层级视图之间相互跳转的演示代码

该资源是 <<SwiftUI编程实现不同TabView标签页中任意导航层级视图之间相互跳转>> 博文的配套源代码,博文链接地址如下: https://blog.csdn.net/mydo/article/details/123754090 在本篇博文中,您将学到以下内容: 如何实现对象在运行时访问不存在的属性? 如何通过编程实现TabView的切换? 如何监听TabView的切换? 在iOS中用户如何手动选择切换到任意嵌套的导航视图? 如何一气呵成 关闭sheet弹出视图 + 导航至目标视图 两个动作? iOS 14 和 iOS 15 对于上述导航操作的不同行为 重要须知:购买过我付费专栏的小伙伴们可以免费向我索要该资源!!!

2022-04-03

Xcode Empty Application模板

Xcode Empty Application模板

2016-02-15

SpriteBuilder 1.5.0

最新的mac下的Cocos2D编程利器SpriteBuilder的最新版1.5.0

2016-01-11

unlocker_new

郑重声明: 本人以人格担保不会在其中添加rootkit,木马,病毒一类的无聊玩意!!!请放心运行。 请首先检查unlocker.zip文件的MD5值 : B35968822E46BC8AEE5AD4A7C859DECB 无误后可以解压运行unlocker软件。 2个OCX文件是VB6的控件运行必须库 msvbvm60.dll是VB6本地解释引擎 unlocker.dll是unlocker的功能逻辑 unlocker_ui.exe是主程序 如果unlocker_ui.exe意外退出,会导致服务没有正常卸载的问题,此时请运行ds.exe。 它的功能是手动删除服务,您可能要重新启动计算机才能重新运行unlocker_ui.exe 请将BUG通过以下途径告诉我,十分感谢: 到我的blog留言 : http://blog.csdn.net/mydo 或者到我的2个帖子中留言 : 看雪论坛: http://bbs.pediy.com/showthread.php?t=76415 csdn: http://topic.csdn.net/u/20081110/15/80c8e73b-8a0a-4996-ab83-ac7b2e601ea3.html enjoy it!be happy!thanks! 侯佩|hopy 2008.11.10

2008-11-10

UnlockerEx

Unlocker是一个偶闲时写的小工具,主要功能有: <br><br> 1. 解锁已打开文件; <br> 2.建立以特定用户身份的shell。<br><br>详细介绍:<br>http://topic.csdn.net/u/20080427/22/30386f22-e9e4-41d7-9115-9fecf3594401.html

2008-04-27

unlocker

simple unlock open file handle DEMO绿色软件,不需安装。code by hopy | 侯佩on 2007.12.28

2007-12-28

cppv1.0

Check Process's PTE v1.0

2006-12-22

空空如也

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

TA关注的人

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