⑴ linux怎样查看字符设备249的物理地址
1、查看cpu型号
#
more
/proc/cpuinfo
|grep
-i
model
2、显示有几块物理网卡
#
lspci
|
grep
Eth
|
wc
-l
3、显示主板序列号
#
dmidecode
|
grep
'Serial
Number'
4、查看硬盘型号
#
more
/proc/scsi/scsi
|grep
-i
model
5、查看物理CPU的个数
#cat
/proc/cpuinfo
|grep
"physical
id"|sort
|uniq|wc
-l
6、查看逻辑CPU的个数
#cat
/proc/cpuinfo
|grep
"processor"|wc
-l
7、查看CPU是几核
#cat
/proc/cpuinfo
|grep
"cores"|uniq
⑵ 没网怎么查物理地址
问题一:没联网时怎么查物理地址 可以用cmd命令 点开始 搜索cmd 梗右键以管理员身份运行 输入ipconfig/all 回车
就得到电脑各种ip的信息 其中就包括物理地址 但是有三个 一般是以太网的那个是你要的
问题二:电脑没联网怎么查找物理地址? 你的网卡驱动装了没有?网卡启用了没有?
命令是对的
问题三:不联网如何看物理地址 按下win+r组合键,输入cmd,按enter海或点击开始-所有程序-附件-命令提示符)
再输入ipconfig/all或getmac,并按下enter
就可以看到你电脑的物理地址
问题四:如何查看网卡的物理地址 工具/原料
Win7
如何查看MAC地址
命令提示符查看
最简单通俗的办法就是直接,打开命令提示符(开始---运行==输入cmd) 界面输入,ipconfig /all 可以看到网卡的物理地址,如图部分
常规方法
除此之外,其实很多用户电脑命令提示符被禁用了。那么怎么查看网卡MAC地址呢?
打开任务栏右下角----找到 “打开网络和共享中心”(如果是XP系统直接查看最后一步) 如下图
出现的网络和共享中心菜单中,找到“更改适配器设置”如箭头位置
然后就能看到当前系统的网卡设备了,找到需要查看的网卡设备如“本地连接”选择“状态”可以查看网卡详细信息
本地连接状态对话框打开之后,点击下方的“详细信息” 随后里面的描述中找到“物理地址‘ 就是MAC地址啦
问题五:怎么查看网卡物理地址\win7如何查看网卡MAC地址 打开命令符窗口,进入dos输入。
点击“开始”菜单,在“搜索程序和文件”输入框,输入“cmd”(会找到进入dos命令的cmd程序),然后回车。
快捷方式“WIN+R”,在输入cmd。(WIN为键盘上和开始键一个图标的按键。)
回车后,弹出命令符窗口,输入“ipconfig/all”,然后进行回车,就会看到一连串的返回信息。
在返回信息中,找到“本地连接”其中的物理地址(Physical Address),见图片,即为本机的mac地址。
当然也可以通过不同的网络网卡查看比如无线网卡等的mac地址。
查看无线网卡mac地址
如果连接了无线网,无线路由器本身会记录无线网卡的mac地址,可以通过无线路由器的设置进行查看mac地址。
保证无线网处于连接中,可以从右下角的状态中看到。
然后打开浏览器,输入“192.168.1.1”(路由器的地址,根据自身路由器有可能有不同)。
进入无线路由器登录页面,输入账号密码,正常是“admin”。
进入无线设置地方,找到“ip和mac绑定”里面有个“APR映射”。
找到本机对应的ip ,其对应的mac地址即为本机mac地址。
如果实在不知道是哪个,就把其他设备的无线暂时断开即可。
问题六:如何查看自己电脑无线网卡的物理地址? 在 开始 运行 里输入CMD 会弹出一个窗口,输入ipconfig /all 就可以看到如6C-12-25-7D-88-A5 字样就是了。
问题七:如何通过网站查找它的ip地址,还有物理地址,网卡地址. 你直接点电脑 开始-----运行----------然后输入ping --------可以得到网络的IP 埂
你把你网络的网址换成你想知道的IP地址的网站,就行了
问题八:linux如何查看物理网卡地址 ifconfig 或 netconfig
问题九:怎么查windows xp系统的物理地址 楼上已经说了方法了 也是最基本的查询方法了 如果你可以联网的话 在本地连接那里也可以 物理地址即MAC 本地连接的状态 高级 会看到 MSC XX-XX-XX-XX-XX-XX的就是了 用楼上的方法查MAC时 注意 如果你笔记本的话 一般都是有无线网卡的 看好你要查的是什么物理地址 每个网卡都有一个物理地址的
问题十:电脑物理地址怎么查 打开“本地连接”属性,点击“详细信息”,“实际地址”就是网卡的物理地址。
⑶ MAC地址查询 Linux/Unix操作系统mac地址怎么查
1.首先按住键盘上的“开始键+R键”,然后在弹出的对话框中输入“CMD”
2.另外还可以依次点击
开始>所有程序>附件>命令提示符
接下来在弹出的命令提示符窗口中输入“ipconfig
/all”并按键盘上的回车,(注:ipconfig
命令为查看IP配置信息,参数“all”表示查看所有网卡的全部配置信息)
接下来找到自己的物理网卡,在网卡的下面即是网卡的物理地址。
⑷ 如何找网卡物理地址
如何查看网卡的物理地址
工具/原料
Win7
如何查看MAC地址
命令提示符查看
最简单通俗的办法就是直接,打开命令提示符(开始---运行==输入cmd) 界面输入,ipconfig /all 可以看到网卡的物理地址,如图部分
常规方法
除此之外,其实很多用户电脑命令提示符被禁用了。那么怎么查看网卡MAC地址呢?
打开任务栏右下角----找到 “打开网络和共享中心”(如果是XP系统直接查看最后一步) 如下图
出现的网络和共享中心菜单中,找到“更改适配器设置”如箭头位置
然后就能看到当前系统的网卡设备了,找到需要查看的网卡设备如“本地连接”选择“状态”可以查看网卡详细信息
本地连接状态对话框打开之后,点击下方的“详细信息” 随后里面的描述中找到“物理地址‘ 就是MAC地址啦
怎么查看网卡物理地址\win7如何查看网卡MAC地址
打开命令符窗口,进入dos输入。
点击“开始”菜单,在“搜索程序和文件”输入框,输入“cmd”(会找到进入dos命令的cmd程序),然后回车。
快捷方式“WIN+R”,在输入cmd。(WIN为键盘上和开始键一个图标的按键。)
回车后,弹出命令符窗口,输入“ipconfig/all”,然后进行回车,就会看到一连串的返回信息。
在返回信息中,找到“本地连接”其中的物理地址(Physical Address),见图片,即为本机的mac地址。
当然也可以通过不同的网络网卡查看比如无线网卡等的mac地址。
查看无线网卡mac地址
如果连接了无线网,无线路由器本身会记录无线网卡的mac地址,可以通过无线路由器的设置进行查看mac地址。
保证无线网处于连接中,可以从右下角的状态中看到。
然后打开浏览器,输入“192.168.1.1”(路由器的地址,根据自身路由器有可能有不同)。
进入无线路由器登录页面,输入账号密码,正常是“admin”。
进入无线设置地方,找到“ip和mac绑定”里面有个“APR映射”。
找到本机对应的ip ,其对应的mac地址即为本机mac地址。
如果实在不知道是哪个,就把其他设备的无线暂时断开即可。
如何查看自己电脑无线网卡的物理地址?
在 开始 运行 里输入CMD 会弹出一个窗口,输入ipconfig /all 就可以看到如6C-12-25-7D-88-A5 字样就是了。
怎样查看网卡地址
1、单机“开始”菜单,点击“运行”按钮,进入DOS界面
2、在DOS界面中输入:"ipconfig"命令
怎么查看网卡物理地址\win7如何查看网卡MAC地址
1、在任务栏右下角单击“网络”图标,选择“打开网络和共享中心”选择“更改适配器设置”,
2、对于有线网卡的MAC地址,请右键点击“本地连接”并选择“属性”;而查看无线网卡的MAC地址,请右键点击“无线网络连接”并选择“属性”,
3、将鼠标悬浮在网卡上面就会出现网卡的物理地址。
linux如何查看物理网卡地址
ifconfig 或 netconfig
请问如何查看自己的网卡地址?
开机--运行--cmd--ipconfig/all
怎么查询电脑物理地址
怎样查看电脑的物理地址(用命令查看和网卡查看)
可通过这种办法确定自己的IP设置的正确性和获得本机网卡的物理地址(MAC地址),方法如下:
1、打开“开始”-“运行”-在弹出窗口中输入 'cmd' -“确定”
2、在DOS窗口下输入 ipconfig/all
显示如图,椭圆形区域,也就是Physical Address.......是本机的网卡的物理地址(MAC地址),矩形区域为本机的IP设置信息。
第二种方法:
用鼠标右键点击“网上邻居”,选择“属性”,会出现下面的窗口。
再双击Internet协议(TCP/IP),在出现的对话框中就可以看到本机的IP地址。这种方法也是最常用的一个方法。
查看物理地址,把鼠标指针放到如下图所示位置,就会出现网卡物理地址(MAC地址)的对话框。
⑸ linxs系统怎么把查ip
1. linux怎么查看IP地址
Linux查看IP地址的方法如下:
第一种方法:
1. 打开Linux操作系统,并右击桌面打开终端。如下图所示:
2. 在打开的终端中输入命令ifconfig -a,并按回车键。如下图所示:
3. 输入ifconfig -a命令之后,即可看到需要的IP地址。如下图所示:
第二种方法:
4. 首先进行下图操作:单击应用程序-系统设置-网络。如下图所示:
5. 进行上图操作之后将会出现网络配置界面,点击该界面。如下图所示:
6. 进行上图操作之后,即可看到所要查询的IP地址。如图所示:
2. linux中哪个命令可以查看自己的IP地址
解决方案1:第一个问题:查看IP是ifconfig(ifconfig -a是显示全部接口)第二个问题:根据你的叙述,可以确认你已经安装了tel,并且服务也开启了。
(验证tel是否启动的命令stat -antlp | grep 23:)在你十分确认用户名与密码正确的情况下,还是提示错误。我想你是不是用root用户登陆的?因为tel的不安全性,linux默认是不允许root在tel登陆的。
你可以新建用户尝试一下。另外,如果根本到不了提示输入用户名与密码的界面,则可能是linux防火墙的原因。
如果比较满意的话,给分数。msn:sysconfig@live解决方案2:ip addr ,在命令终端输入ip addr,绝对没错的!我用过!解决方案3:ifconfig这个命令可以!解决方案4:ifconfig解决方案5:LINUX查看IP是ifconfigDOS下是ipconfig -a对于你补充的问题你是VM安装linux 在DOS下查看ipconfig时候 看清 VMware virtual ip就是查看VM虚拟主机的IP 然后尝试着能否ping通,如果不能可能是LINUX下开了防火墙 service iptables stop再尝试登陆如果还不行,我建议你下载一个putty 或者SecureCRT 在WINDOWS下用SSH登陆linux SSH也类似于tel解决方案6:ifconfig [option]option 常用选项是 -a或者用--help选项自己查看~linux中哪个命令可以查看自己的IP地址推荐答案ifconfig Linux查看IP地址的命令--ifconficonfig命令用于查看和更改网络接口的地址和参数 $ifconfig -a lo0: flags=849 mtu 8232 i 127.0.0.1 mask ff000000 hme0: flags=863 mtu 1500 i 211.101.149.11 mask ffffff00 broadcast 211.101.149.255 。
[详细]linux中哪个命令可以查看自己的IP地址答:第一个问题:查看IP是ifconfig(ifconfig -a是显示全部接口) 第二个问题:根据你的叙述,可以确认你已经安装了tel,并且服务也开启了。 (验证tel是否启动的命令stat -antlp | grep 23:)在你十分确认用户 名与密码正确的情况下,还。
Linux怎么查看IP地址 linux系统IP设置与查看命令大全答:1. 使用ifconfig命令配置并查看网络接口情况 示例1: 配置eth0的IP,同时激活设备: # ifconfig eth0 192.168.4.1 mask 255.255.255.0 up 示例2: 配置eth0别名设备 eth0:1 的IP,并添加路由 # ifconfig eth0:1 192.168.4.2 # route add –host 1。linux中哪个命令可以查看自己的IP地址答:查看IP是ifconfig(ifconfig -a是显示全部接口) 去看看《Linux就该这么学》这本书linux如何查看本机ip地址答:1、首先打开linux操作系统在进入到界面。
2、在桌面右击打开终端。 3、在终端里输入ifconfig -a命令在回车键。
4、如下图可以看到了ip地址。在Linux下查自己的IP怎么查答:可以使用ifconfig命令查看IP。
ifconfig命令用于配置和显示Linux内核中网络接口的网络参数。输入ifconfig,会打印出网络接口的参数,除了IP地址还会打印出物理地址、掩码地址等网络接口相关参数.linux 系统下 查看ip命令?答:1、首先打开linux操作系统在进入到界面。
2、在桌面右击打开终端。 3、在终端里输入ifconfig -a命令在回车键。
4、如下图可以看到了ip地址。Redhat如何查看和修改IP地址答:首先是查看当前机器网卡的IP1.显示当前启动的网络接口命令:ifconfig2.查看当前所有网络接口命令:ifconfig -a3.查看指定网络接口命令:ifconfig eth0在LINUX下修改IP分为二种情况,1.调试时修改IP,仅在当前生效,重启后恢复为原有IPifconfig eth0 19。
linux grep怎么查ip地址答:ifconfig是linux中用于显示或配置网络设备(网络接口卡)的命令,英文全称是work interfaces configuring。它能够显示网卡的IP地址、子网掩码、广播地址、硬件地址等信息。
如果希望结果只返回ip地址,可以使用grep命令对返回的结果进行过滤。linux系统中怎么查ip地址答:1、进入Linux系统,如果是进入的KDE、Gnome等桌面,在桌面右击打开终端。
在终端里输入ifconfig -a命令按回车键执行即可查看IP地址,如果是进入的字符界面,直接执行ifconfig -a 命令即可。 2、如下图可以看到了ip地址。
linux中哪个命令可以查看自己的IP地址查看IP是ifconfig(ifconfig -a是显示全部接口) 去看看《Linux就该这么学》这本书linux中哪个命令可以查看自己的IP地址查看IP是ifconfig(ifconfig -a是显示全部接口) 第二个问题:根据你的叙述,可以确认你已经。 的?因为tel的不安全性,linux默认是不允许root在tel登陆的。
你可 以新建用户尝试。linux中哪个命令可以查看自己的IP地址方法/步骤1、首先打开linux操作系统在进入到界面。
2、在桌面右击打开终端。3、在终端里输入ifconfig -a命令在回车键。
4、如下图可以看到了ip地址。linux中哪个命令可以查看自己的IP地址ifconfig Linux查看IP地址的命令--ifconfig ifconfig命令用于查看和更改网络接口的地址和参数 $ifconfig -a lo0: flags=849 mtu 8232 i 127.0.0.1 mask ff000000 hme。
在linux下查看、修改IP地址信息的命令是查看ip:你可以使用 ifconfig -a 修改ip: 设置临时ip:iifconfig eth0 x.x.x.x mask x.x.x.x 设。 vim /etc/sysconfig/work-scripts/ifcfg-eth0 IPADDR=x.x.x.x IP地址 MASK=x.x.x。
.linux下查看IP地址07 ---- Re: linux下能否用命令行查看当时ADSL的IP地址。linux中,在windows环境下,使用什么命令可。
3. linux 系统中怎么查找ip地址
直接输入虚拟机上的ip 怎么不行?要怎么改? 回答: 用putty.exe登录需要设置主机地址和端口,要选择好登录协议和会话名称保存就可以远程登录的 追问: 我用了 ssh协议, 端口号是22 , 但是没有成功。求解 回答: Connection refused 的意思是连接被拒绝。
可能是防火墙阻止了,把防火墙关闭试一下就知道了。在命令行里以root身份在终端中运行
iptables -F #此命令用来关闭linux自带的iptables防火墙
关闭防火墙后,看是否能登陆linux,如果可以那么就是防火墙的设置问题,网上有很多iptables的教程,要学习linux,建议还是好好学学iptables,没有坏处,如果这样还是不能登陆,请先检查你的虚拟机是否采用了除host only方式以外的网络连接方式,如果是,请改成host only,然后将你的虚拟机中的linux的ip地址和宿主机的地址改在一个网段后,再试试。 修改IP文件内容如下:
\device=eth0
hwaddr=00:0c:29:a2:8c:b2onboot=yestype=ether
mask=255.255.255.0
4. 怎么查别人电脑的ip
方法很多, 可以 一。
用珊瑚版的QQ就可以显示在线好友的IP 二。 1、邮件查询法 使用这种方法查询对方计算机的IP地址时,首先要求对方先给你发一封电子邮件,然后你可以通过查看该邮件属性的方法,来获得邮件发送者所在计算机的IP地址;下面就是该方法的具体实施步骤: 首先运行OutLookexpress程序,并单击工具栏中的“接受全部邮件”按钮,将朋友发送的邮件接受下来,再打开收件箱页面,找到朋友发送过来的邮件,并用鼠标右键单击之,从弹出的右键菜单中,执行“属性”命令; 在其后打开的属性设置窗口中,单击“详细资料”标签,并在打开的图1标签页面中,你将看到“Received:fromxiecaiwen(unknown[11.111.45.25])”这样的信息,其中的“11.111.45.25”就是对方好友的IP地址;当然,要是对方好友通过Inter中的WEB信箱给你发送电子邮件的话,那么你在这里看到的IP地址其实并不是他所在工作站的真实IP地址,而是WEB信箱所在网站的IP地址。
当然,如果你使用的是其他邮件客户端程序的话,查看发件人IP地址的方法可能与上面不一样;例如要是你使用foxmail来接受好友邮件的话,那么你可以在收件箱中,选中目标邮件,再单击菜单栏中的“邮件”选项,从弹出的下拉菜单中选中“原始信息”命令,就能在其后的界面中看到对方好友的IP地址了。 2、日志查询法 这种方法是通过防火墙来对QQ聊天记录进行实时监控,然后打开防火墙的日志记录,找到对方好友的IP地址。
为方便叙述,本文就以KV2004防火墙为例,来向大家介绍一下如何搜查对方好友的IP地址: 考虑到与好友进行QQ聊天是通过UDP协议进行的,因此你首先要设置好KV2004防火墙,让其自动监控UDP端口,一旦发现有数据从UDP端口进入的话,就将它自动记录下来。在设置KV2004防火墙时,先单击防火墙界面中的“规则设置”按钮,然后单击“新建规则”按钮,弹出图2所示的设置窗口; 在该窗口的“名称”文本框中输入“搜查IP地址”,在“说明”文本框中也输入“搜查IP地址”;再在“网络条件”设置项处,选中“接受数据包”复选框,同时将“对方IP地址”设置为“任何地址”,而在“本地IP地址”设置项处不需要进行任何设置; 下面再单击“UDP”标签,并在该标签页面下的“本地端口”设置项处,选中“端口范围”选项,然后在起始框中输入“0”,在结束框中输入“65535”;同样地,在“对方端口”设置项处,也选中“端口范围”选项,然后在起始框中输入“0”,在结束框中输入“65535”。
接着在“当所有条件满足时”设置项处,选中“通行”选项,同时将“其他处理”处的“记录”选项选中,而“规则对象”设置项不需要进行任何设置;完成了上面的所有设置后,单击“确定”按钮,返回到防火墙的主界面;再在主界面中选中刚刚创建好的“搜查IP地址”规则,同时单击“保存”按钮,将前面的设置保存下来。 完成好上面的设置后,KV2004防火墙将自动对QQ聊天记录进行全程监控,一旦对方好友给你发来QQ信息时,那么对方好友的IP地址信息就会自动出现在防火墙的日志文件中,此时你可以进入到KV2004防火墙的安装目录中,找到并打开“kvfwlog”文件,就能搜查到对方好友的IP地址。
# 3、工具查询法 这种方法是通过专业的IP地址查询工具,来快速搜查到对方计算机的IP地址。例如,借助一款名为WhereIsIP的搜查工具,你可以轻松根据对方好友的Web网站地址,搜查得到对方好友的IP地址,甚至还能搜查到对方好友所在的物理位置。
在用WhereIsIP程序搜查对方IP地址时,首先启动该程序打开如图3所示的搜查界面,然后单击该界面的“Website”按钮,在其后的窗口中输入对方好友的Web地址,再单击“next”按钮,这样该程序就能自动与Inter中的DomainNameWhois数据库联系,然后从该数据库中搜查到与该Web网站地址对应的IP地址了。当然,除了可以知道IP地址外,你还能知道对方好友所在的具体物理位置。
倘若要想查看局域网中某个工作站的IP地址时,可以使用“网络刺客II”之类的工具来帮忙;只要你运行该工具进入到它的主界面,然后执行工具栏中的“IP地址主机名”命令,在其后打开的对话框中,输入对方好友的计算机名称,再单击“转换成IP”按钮,就能获得对方好友所在计算机的IP地址了。 如果你使用Oicqsniffer工具的话,那么查询QQ好友的IP地址就更简单了。
只要你单击该程序界面中的“追踪”按钮,然后向对方好友发送一条QQ消息,那么Oicqsniffer工具就会自动将对方好友的IP地址以及端口号显示出来了。除此之外,还有许多可以查找IP地址的专业工具可以选择,例如IPsniper软件、4、命令查询法 这种方法是通过Windows系统内置的网络命令“stat”,来查出对方好友的IP地址,不过该方法需要你先想办法将对方好友邀请到QQ的“二人世界”中说上几句话才可以。
下面就是该方法的具体实现步骤: 首先单击“开始”/“运行”命令,在弹出的系统运行对话框中,输入“cmd”命令,单击“确定”按钮后,将屏幕切换到MS-DOS工作状态;然后在DOS命令行中执行“stat-n”命令,在弹出的图4界。
5. 在windows系统中怎么查看电脑的ip地址
方法一:
右键点击开始——命令提示符,输入 ipconfig 确定或回车。
方法二:
右键点击任务栏上的网络图标——打开网络和共享中心——本地连接——详细信息。
6. iphone怎么查看手机ip地址
打开iPhone的设置,在设置界面中点击“无线局域网”;
点击加入的wifi名字行最右侧“i”标志;
就会显示出ip地址页面了
那么如何查询3G4G下面的ip地址呢,打开手机浏览器的网络页面,在搜索栏输入“ip”然后点击“网络一下”;
此时显示的ip地址就是你的手机上网ip了;
其实在wifi上网的模式下也可以这样子搜,不过这时候显示的是wifi的公网地址。
⑹ linux 下通过某个ip查找mac 地址 命令
1.首先,右键点击桌面,选择“打开终端”,或者按CTRL+Alt+T打开终端。
⑺ linux查看物理地址命令
1、 ip -a 、 cat /sys/class/net/ens39/address 其中 HWaddr字段就是MAC地址,这是最常用的方式.
2、cat /proc/net/arp 查看连接到本机的远端IP的MAC地址
⑻ Linux下怎样在进程中获取虚拟地址对应的物理地址
Linux文件目录中的/proc记录着当前进程的信息,称其为虚拟文件系统。在/proc下有一个链接目录名为self,这意味着哪一个进程打开了它,self中存储的信息就是所链接进程的。self中有一个名为page_map的文件,专门用来记录所链接进程的物理页号信息。这样通过/proc/pid/page_map文件,允许一个用户态的进程查看到每个虚拟页映射到的物理页
/proc/pid/page_map中的每一项都包含了一个64位的值,这个值内容如下所示。每一项的映射方式不同于真正的虚拟地址映射,其文件中遵循独立的对应关系,即虚拟地址相对于0x0经过的页面数是对应项在文件中的偏移量
* /proc/pid/pagemap. This file lets a userspace process find out which
physical frame each virtual page is mapped to. It contains one 64-bit
value for each virtual page, containing the following data (from
fs/proc/task_mmu.c, above pagemap_read):
* Bits 0-54 page frame number (PFN) if present//present为1时,bit0-54表示物理页号
* Bits 0-4 swap type if swapped
* Bits 5-54 swap offset if swapped
* Bit 55 pte is soft-dirty (see Documentation/vm/soft-dirty.txt)
* Bit 56 page exclusively mapped (since 4.2)
* Bits 57-60 zero
* Bit 61 page is file-page or shared-anon (since 3.5)
* Bit 62 page swapped
* Bit 63 page present//如果为1,表示当前物理页在内存中;为0,表示当前物理页不在内存中
在计算物理地址时,只需要找到虚拟地址的对应项,再通过对应项中的bit63判断此物理页是否在内存中,若在内存中则对应项中的物理页号加上偏移地址,就能得到物理地址
通过程序获取物理地址并验证写时拷贝技术
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdint.h>
//计算虚拟地址对应的地址,传入虚拟地址vaddr,通过paddr传出物理地址
void mem_addr(unsigned long vaddr, unsigned long *paddr)
{
int pageSize = getpagesize();//调用此函数获取系统设定的页面大小
unsigned long v_pageIndex = vaddr / pageSize;//计算此虚拟地址相对于0x0的经过的页面数
unsigned long v_offset = v_pageIndex * sizeof(uint64_t);//计算在/proc/pid/page_map文件中的偏移量
unsigned long page_offset = vaddr % pageSize;//计算虚拟地址在页面中的偏移量
uint64_t item = 0;//存储对应项的值
int fd = open("/proc/self/pagemap", O_RDONLY);。。以只读方式打开/proc/pid/page_map
if(fd == -1)//判断是否打开失败
{
printf("open /proc/self/pagemap error
");
return;
}
if(lseek(fd, v_offset, SEEK_SET) == -1)//将游标移动到相应位置,即对应项的起始地址且判断是否移动失败
{
printf("sleek error
");
return;
}
if(read(fd, &item, sizeof(uint64_t)) != sizeof(uint64_t))//读取对应项的值,并存入item中,且判断读取数据位数是否正确
{
printf("read item error
");
return;
}
if((((uint64_t)1 << 63) & item) == 0)//判断present是否为0
{
printf("page present is 0
");
return ;
}
uint64_t phy_pageIndex = (((uint64_t)1 << 55) - 1) & item;//计算物理页号,即取item的bit0-54
*paddr = (phy_pageIndex * pageSize) + page_offset;//再加上页内偏移量就得到了物理地址
}
const int a = 100;//全局常量
int main()
{
int b = 100;//局部变量
static c = 100;//局部静态变量
const int d = 100;//局部常量
char *str = "Hello World!";
unsigned long phy = 0;//物理地址
char *p = (char*)malloc(100);//动态内存
int pid = fork();//创建子进程
if(pid == 0)
{
//p[0] = '1';//子进程中修改动态内存
mem_addr((unsigned long)&a, &phy);
printf("pid = %d, virtual addr = %x , physical addr = %x
", getpid(), &a, phy);
}
else
{
mem_addr((unsigned long)&a, &phy);
printf("pid = %d, virtual addr = %x , physical addr = %x
", getpid(), &a, phy);
}
sleep(100);
free(p);
waitpid();
return 0;
}
测试结果如下:
全局常量:符合写时拷贝技术
子进程修改动态内存
*其实想要知道虚拟地址对应的物理地址,通过这样的方式也可以得到物理地址而不用操作MMU。。。*
以上就是Linux下怎样在进程中获取虚拟地址对应的物理地址的全文介绍,希望对您学习和使用linux系统开发有所帮助.
⑼ linux中哪个命令可以查看自己的IP地址
查看方法如下:
打开linux操作系统在进入到界面。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。