当前位置:  技术问答>linux和unix

Linux-2.6.11内联汇编指令stap

    来源: 互联网  发布时间:2017-05-12

    本文导语:  在Linux-2.6.11的includeasm-s390smp.h中读到如下一段代码: extern __inline__ __u16 hard_smp_processor_id(void) {         __u16 cpu_address;           __asm__ ("stap %0n" : "=m" (cpu_address));         return cpu_address; } 汇编语句: ...

在Linux-2.6.11的includeasm-s390smp.h中读到如下一段代码:
extern __inline__ __u16 hard_smp_processor_id(void)
{
        __u16 cpu_address;
 
        __asm__ ("stap %0n" : "=m" (cpu_address));
        return cpu_address;
}

汇编语句:
 __asm__ ("stap %0n" : "=m" (cpu_address));

中的stap指令没有找到出处,虽然从代码可以大致看出意思是读取processor id到cpu_address变量,
但还是想学习下“stap指令”到底是怎么用的?哪位大大可以帮到我吗?谢谢了先!

|
这是s390处理器的汇编指令吧,找s390处理器用户手册查.

|
查了下,是IBM Enterprise Systems Architecture/390芯片的指令。
可参考链接:
http://www-947.ibm.com/support/entry/portal/search_results?sn=spe&q=ESA/390%20Principles%20of%20Operation&filter=language:en
下载手册:ESA/390 Principles of Operation (SA22-7201-08) 

STORE CPU ADDRESS
STAP D(B) [S]
┌────────────────┬────┬────────────┐
│ 'B212' │ B │ D │
└────────────────┴────┴────────────┘
 16 2 31
The 16-bit unsigned binary integer by which this
CPU is identified in a multiprocessing configuration
is stored at the halfword location designated
by the second-operand address.
Special Conditions
The operand must be designated on a halfword
boundary; otherwise, a specification exception is
recognized.
Condition Code: The code remains unchanged.
Program Exceptions:
 Access (store, operand 2)
 Privileged operation
 Specification

    
 
 

您可能感兴趣的文章:

  • linux内核是用c和汇编写的,怎么会有inline内联函数呢?
  • linux下objdump命令用法介绍及如何使用objdump命令进行反汇编
  • linux中所用的汇编怎么和我们学的汇编不一样?
  • linux内核源代码中的汇编部分与其他汇编有不同的地方吗?
  • 高分求助:linux内核中的汇编语言和Dos或windows下的汇编是一样的吗,有这方面的书或资料可供学习吗,分不够可再加,决不食言
  • 请问各位大虾,如何在linux环境下学习汇编?
  • LINUX下的汇编 怎么看????高手指导语法
  • 强力推荐一本LINUX下汇编(即AT&T汇编)的新书
  • linux汇编
  • 请问linux源代码中的汇编是什么格式的
  • linux下编译.S汇编代码
  • 不会汇编语言,想学习Linux内核网络部分的代码可以嘛?
  • 有谁知道linux下的反汇编?
  • linux 下大家用什么工具看汇编代码?
  • 求助,在linux下,c语言和汇编语言的接口是什么?
  • Linux中奇怪的汇编语言?
  • 请推荐一下linux下关于 汇编编程的好书?
  • 请问Linux2.6版本里用什么汇编语言??钱不多了,谢谢大家了!!!
  • 如果linux下的C语言中嵌入汇编成程序,GCC需要什么样的参数?
  • 看LINUX的内核要不要硬件、数据结构、算法、汇编
  • 请问载linux下如何调试汇编程序,有没有像debug的程序。
  • 如何反汇编linux固件内核
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高分求常用linux或者unix指令
  • 问下,读寄存器指令在linux中的速度问题
  • linux下通过串口操作AT指令如何拨打电话.
  • 请问一个关于linux中合并文件的指令问题
  • 请问哪里有linux的指令函数说明
  • 我的LINUX下怎么没有操作FAT分区的指令,如mcopy等
  • 哪有linux指令集的免费电子文档下载?
  • 有谁在linux串口下用ESCPOS指令控制打印机打印,碰到问题,请赐教
  • linux怎样实现自定义指令"cd -n"
  • linux下的服务器的一些基本指令有哪些?
  • 关于Linux系统的-df指令
  • linux :am指令是什么意思?
  • Unix/linux的关机指令是什么?
  • Linux下如何通过指令设置DNS
  • 小问题:如何在linux下,取得OS名和版本。shell指令
  • 大家能不能给我介绍点关于Linux内路由过程及route指令的详细用法的好文章。
  • 关于Linux下的个别指令的使用
  • 关于linux ubuntu make指令以及参数的问题
  • 问下,读寄存器指令在linux中的速度问题 iis7站长之家
  • 请问在Linux 终端下如何发ESC/POS指令到epson打印机?
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • linux命令大全详细分类介绍及常用linux命令文档手册下载


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,