• DDK编写64位驱动时加入x64汇编的方法


    上篇讲了如何在编写x64应用程序时加入x64汇编,这里来说说如何在编写x64驱动时加入x64汇编。

    一、在asm文件中单独编写功能函数

    比如要实现一个64位的加法函数,原型如下:

    ULONG64 myAdd(ULONG64 u1,ULONG64 u2);
    

    那么源码目录(一般是sources文件所在的目录)新建一个文件夹,名字叫做 amd64

    然后新建一个文件,写入以下内容:

    .CODE
    
    myAdd PROC
        add rcx,rdx
        mov rax,rcx
        ret
    myAdd ENDP
    
    END

    将其保存为myAdd.asm,存放到刚才建立的amd64文件夹中。

    并且在引用它的源文件中添加如下声明:

    EXTERN_C ULONG64 myAdd(ULONG64 u1,ULONG64 u2);

    二、修改SOURCES文件

    在SOURCES文件中加入一行:

    AMD64_SOURCES = amd64myAdd.asm   #这是64位的,32位的可以改为I386_SOURCES 

    原来的SOURCES后面就不要添加这个文件了,然后就可以了!实测通过,够简单吧!

    新加的这一项仅在编译x64驱动时才起作用,在编译x86驱动时会自动忽略,这样即使切换编译环境也不需要修改任何设置。

    参考 :

    http://bbs.pediy.com/showthread.php?p=1185534



  • 相关阅读:
    sed 使用总结
    rgmanager 介绍
    linux nbd & qemu-nbd
    corosync基本使用
    svn 基本使用
    tornado 实践
    mysql mac启动
    postgresql
    django
    django
  • 原文地址:https://www.cnblogs.com/achillis/p/5426717.html
Copyright © 2020-2023  润新知