会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
thammer
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
9
10
11
12
13
14
15
16
17
···
24
下一页
2020年8月8日
iptables实现端口映射
摘要: 如果想要NAT功能能够正常使用,需要开启Linux主机的核心转发功能。 echo 1 > /proc/sys/net/ipv4/ip_forward 方式一:以wan口ip作为匹配条件 1. 新增一条端口映射规则 将访问wan口的端口转发至内网某个ip上 iptables -t nat -A PRE
阅读全文
posted @ 2020-08-08 15:55 thammer
阅读(3033)
评论(0)
推荐(0)
2020年7月3日
valgrind简单使用介绍
摘要: valgrind使用 内存检查工具memcheck valgrind --tool=memcheck yourprogram 多线程工具helgrind valgrind --tool=helgrind yourprogram 其他常用选项 指定log输出文件,有时候不想程序的打印输出和valgri
阅读全文
posted @ 2020-07-03 09:55 thammer
阅读(949)
评论(0)
推荐(0)
2020年5月13日
OPC UA认识汇总
摘要: OPC是什么? OPC是自动化行业及其他行业用于数据安全交换时的互操作性标准。它独立于平台,并确保来自多个厂商的设备之间信息的无缝传输,OPC基金会负责该标准的开发和维护。 OPC标准是由行业供应商,终端用户和软件开发者共同制定的一系列规范。这些规范定义了客户端与服务器之间以及服务器与服务器之间的接
阅读全文
posted @ 2020-05-13 15:10 thammer
阅读(9678)
评论(1)
推荐(5)
2020年4月25日
linux内核铁三角-进程(任务)调度
摘要: 在linux中,进程是资源分配的基本单位,而线程才是调度的基本单位。 一个在计算机上运行的程序,需要一些基本的硬件资源才能正常运行起来,包括CPU,内存,存储设备(文件),还有对所有文件进行管理的文件系统。 在linux里面是用 来描述一个进程资源的分配情况(线程也是用这个结构来描述,具体后面介绍)
阅读全文
posted @ 2020-04-25 21:16 thammer
阅读(755)
评论(0)
推荐(1)
2020年4月9日
ubuntu以root运行wireshark
摘要: wireshark要监控eth0,但是必须要root权限才行。但是,直接用root运行程序是相当危险,也是非常不方便的。 解决方法如下: 添加wireshark用户组 sudo groupadd wireshark 将dumpcap更改为wireshark用户组 sudo chgrp wiresha
阅读全文
posted @ 2020-04-09 10:10 thammer
阅读(1105)
评论(0)
推荐(0)
2020年4月1日
linux 进程-线程文件操作注意点
摘要: 为了测试globalmem在不带互斥保护下,多个地方进行IO操作,会引发竞态的问题。写了如下一个测试程序: 会发现依然会出现文件偏移量相互干扰的情况,下图反应了fork调用后,父子进程与文件表,文件inode,vnode之间的关系(参考自APUE): 可以看到fork对父进程打开文件的拷贝只是拷贝了
阅读全文
posted @ 2020-04-01 17:29 thammer
阅读(372)
评论(0)
推荐(0)
2020年3月30日
ARM linux 的原子操作分析
摘要: linux ARM的原子操作源文件位于 linux源码宏展开 最开始由如下宏定义,linux的各种宏太复杂了,分析起来有点费劲 又根据 "GCC内联汇编" 的替换规则,result,tmp,v counter,&v counter,i按照出现的顺序分别替换%0 %4,操作数被逐个替换: 单独提取汇编
阅读全文
posted @ 2020-03-30 00:26 thammer
阅读(1160)
评论(0)
推荐(0)
2020年3月29日
GCC 扩展内联汇编简介
摘要: 基本内联汇编 基本内联汇编格式比较直观,可以直接这样写: 例如: 扩展内联汇编 前面讨论的基本内联汇编只涉及到嵌入汇编指令,而在扩展形式中,我们还可以指定操作数,并且可以选择输入输出寄存器,以及指明要修改的寄存器列表。对于要访问的寄存器,并不一定要显式指明,也可以留给GCC自己去选择,这可能让GCC
阅读全文
posted @ 2020-03-29 11:29 thammer
阅读(2697)
评论(0)
推荐(0)
2020年3月27日
清华大学操作系统公开课(八)-同步互斥
摘要: 1.什么是互斥 在计算机执行过程中,对于多个任务,它们共享着一个资源,要求对该资源的存取过程是排他的。 2.为什么要有互斥 不考虑SMP情况,仅分析单CPU情况,因为SMP只不过是更复杂的一种情况,原理类似。 有如下代码片段,其中share_data是一个全局变量。 2.1线程间 如果两个线程都执行
阅读全文
posted @ 2020-03-27 22:09 thammer
阅读(431)
评论(0)
推荐(0)
2020年3月21日
简单的字符设备驱动
摘要: 下面是一个最简单的字符设备驱动。 #include <linux/init.h> #include <linux/module.h> #include <linux/fs.h> #include <linux/cdev.h> #include <linux/slab.h> #include <lin
阅读全文
posted @ 2020-03-21 21:59 thammer
阅读(274)
评论(0)
推荐(0)
上一页
1
···
9
10
11
12
13
14
15
16
17
···
24
下一页
公告