作为Python初学者,这个教程简单明了,值得学习。ipython + ctypes: 调试/测试Linux API的交互式运行环境ipython是最好的REPL!(我喜欢Python,至少有30%的好感来自ipython)REPL的好处不言自明,在开发和调试时能大大的提高效率。尤其是需要对API进行快速验证时。我最早是用gdb来做一些REPL的事情,但毕竟操作复杂,交互式功能有限。而用ctypes,就爽快多了,ctypes可以直接人so中提取出函数,在Python层面稍加包装,就能直接使用,不用编译/连接,保持运行状态,结果出来直接用Python分析……简直是画面太美真实场景:我们的运营环境有数十万host,host上去除了编译环境,某一天,我们对某个系统调用的返回产生怀疑。于是,按照通常的作法,在开发机上写一个示例程序,编译,拷贝到运营机,运行,反复执行这一个过程。那么有了ctypes,直接在python/ipython的REPL里调试就好了。还不容易留下可疑的可执行程序。

浅谈 Linux API的交互式运行环境ipython是最好的REPL相关推荐

  1. 浅谈 Linux 系统中的 SNMP Trap 【转】

    文章来源:浅谈 Linux 系统中的 SNMP Trap 简介 本文讲解 SNMP Trap,在介绍 Trap 概念之前,首先认识一下 SNMP 吧. 简单网络管理协议(Simple Network ...

  2. 浅谈Linux中ldconfig和ldd的用法

    ldd 查看程序依赖库 ldd 作用:用来查看程式运行所需的共享库,常用来解决程式因缺少某个库文件而不能运行的一些问题. 示例:查看test程序运行所依赖的库: /opt/app/todeav1/te ...

  3. 浅谈Linux下的媒体播放器(转)

    浅谈Linux下的媒体播放器(转)[@more@]Linux开放实验室(Linux OpenLab)郝煜.季冰Linux开放实验室校园爱好者小组 陈强(农大).吴迪.雷凌.戴二红.刘志强(北科大)Li ...

  4. ldconfig mysql_浅谈Linux中ldconfig和ldd的用法

    ldd 查看程序依赖库 ldd 作用:用来查看程式运行所需的共享库,常用来解决程式因缺少某个库文件而不能运行的一些问题. 示例:查看test程序运行所依赖的库: /opt/app/todeav1/te ...

  5. linux中sh+$0,浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释

    摘抄自:ABS_GUIDE 下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: ...

  6. linux 易语言窗口程序_浅谈Linux入门的基本知识

    浅谈Linux入门的基本知识 图形模式与文字模式的切换方式Linux预设提供了六个命令窗口终端机让我们来登录. 默认我们登录的就是第一个窗口,也就是tty1,这个六个窗口分别为tty1.tty2 - ...

  7. Linux下安装Dubbo运行环境

    Linux下安装Dubbo运行环境 1.1.1    安装jdk zk首先需要安装jdk环境. yum -y install glibc.i686       #jdk依赖glibc mkdir /u ...

  8. Linux先发送条件变量,浅谈Linux条件变量的使用

    Linux线程同步之间存在多种机制,条件变量是一种类似操作系统里提到的生产者-消费者算法的同步机制,允许线程以无竞争的方式等待特定条件的发生. 示例伪代码: void* Thread1(void){ ...

  9. Linux系统常用函数,浅谈linux下的一些常用函数的总结(必看篇)

    1.exit()函数 exit(int n)  其实就是直接退出程序, 因为默认的标准程序入口为int main(int argc, char** argv),返回值是int型的. 一般在shell下 ...

最新文章

  1. java实现动态上传多个文件并解决文件重名问题
  2. shiro系列一、认识shiro
  3. python正则表达式操作指南_Python重新正则表达式操作指南
  4. react实现多行文本超出加省略号
  5. 无障碍的 Web 环境应该如何打造?
  6. 重新制作Docker镜像
  7. 学习python-day1
  8. 毕业设计专用 完全开源 基于Java的房屋租赁管理系统
  9. AndRoid studio创建APP图标
  10. 笔记本查看WIFI密码
  11. 微信开发者工具通过二维码编译步骤
  12. 记录下SPADE(GauGan)的学习心得
  13. 启动docker-compose时报/usr/lib/python2.7/site-packages/requests/__init__.py:91: RequestsDependencyWarnin
  14. 从ccps项目中学习bottle,sqlalchemy,jinja2
  15. 奔驰首秀L4自动驾驶:100万最贵电动车展示最豪华「AI代客泊车」
  16. selenium报异常:it is not in the current frame context, or the document has been refreshed
  17. 前端:HTML+CSS+JavaScript实现轮播图
  18. 霍常亮app淘宝客开发视频教程第7节
  19. 25岁,毕业一年辞职自学转行嵌入式是否可行?
  20. easypoi导出excel不设置样式_POI Excel导出样式设置

热门文章

  1. v-for 获取数组key value_Vue之路 | 05von、vif、vfor
  2. 7安装sql cent os server_Cent OS 7 编译安装 My SQL 5.7
  3. android限制安装包来源,Android系统设置settings应用学习(一)--允许未知来源应用安装...
  4. go int 转切片_一文掌握GO语言实战技能(二)
  5. 2022年中国商业数据智能行业研究报告
  6. 2020快手汽车行业数据价值报告
  7. 产品经理必备的两种心态
  8. android p安装教程,Android SDK的安装教程
  9. 作者:徐优俊(1990-),男,北京大学前沿交叉学科研究院博士生。
  10. 【2017年第1期】CCF大专委2017年大数据发展趋势预测