【转自 http://blog.ixpub.net/html/63/8400463-5431.html】
simics是一款超级模拟器,可模拟多种CPU,比如可模拟Sun Blade 1500、Sun Fire 3800-6800、Sun Enterprise 3500-6500等等,可模拟出多个CPU,硬盘,网卡....功能N强大,有兴趣的哥们可自行摸索如何配置模拟文件。不仅如此,simics还可以同时模拟多台机器,而且这些机器通过一个虚拟的以太网链路连接在一起组成一个小网络环境。
Simics简要教程目录概览
安装简述
基本用法
基本操作
保存模拟机的当前工作状态
模拟机和真机的文件对拷
调整模拟机的控制台窗口大小
向控制台发送字符
复制控制台信息
控制simics的CPU使用率
陆续上料ing......
OBP模拟(需回复)
在模拟机E6500上安装solaris10 u4(需回复)
构建虚拟网络(需回复)
定制虚拟机型
updating......传说中的黄金分割线 ^_^
===================================================================================
1、安装简述
QUOTE:
1.Simics下载:google search
2.Virtutech.Simics.v3.0.29注册文件(需回复):
下载1:
Virtutech.Simics.v3.0.29-License.zip (8.8 KB)
下载2:
Virtutech_Simics_3.0.29-keygen.zip (48.88 KB)
安装注意点
a、如果出现:「license中的用户与当前系统用户不匹配」的错误提示,请使用keygen文件生成一个License.
b、badb0y:License中的用户名必须和当前系统的用户名一致,区分大小写
c、月中井:「Terminal Server remote client not allowed」,请见41、42楼
3.第三方组件:
winpap 3.0
simics安装包中自带,也可从http://www.winpcap.org下载。用来实现虚拟网络和真机间以桥接方式连接,安装完可修改注册表
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/NPF/Start 从x03改为0x2,让其自动启动
TAP-Win32
作用和winpap相同,不过它可以在真机创建虚拟网卡,然后simics使用虚拟网卡联通真机所处的网络。tap-win32是 OpenVPN 软件的一个组件,下载地址:http://open.net/,安装open时仅选择TAP-WIN32安装。
本地下载:23楼,badb0y兄友情提供
4.配套工具:
限制CPU的使用率:34楼,badb0y兄友情提供
5.可模拟的机型和操作系统:
可模拟的机器和处理器列表:56楼,shyjack友情摘录
可安装的操作系统简要列表:
[Copy to clipboard] [ - ]CODE:
The standard host platforms for Simics are:
Linux/x86
Built for Red Hat Linux 7.3. Simics also runs on many other Linux distributions.
Linux/AMD64
Built for SuSE Linux 9.0. Simics also runs on many other AMD64 Linux distributions.
Solaris/UltraSPARC 64-bit
Built for Solaris 8. Simics also runs on Solaris 9 and 10.
Windows/x86
Built for Windows 2000. Simics also runs on newer versions of Windows.
PS:按理说,能够安装哪种操作系统,就看模拟的机器是否支持了,和simics没有关系,请各位自行分辨!
2、基本用法
QUOTE:
基本操作
file-->new session,选择workspace目录中target/ebony/ebony-linux-common.simics
这个模拟IBM PowerPC 440的模版文件,打开后默认为暂停状态,需要点击simics的控制窗口的run按钮或输入控制命令:
处于运行状态时,simics控制窗口最下面的命令输入提示符会由simics>变成running>
在simics的控制窗口输入continue后,模拟机才会继续工作,模拟机的控制台如下:
查看命令帮助:simics> help command
检查点-保存当前状态
保留模拟机的当前工作状态
running> stop
file-->save checkpoint as or simics> write-configuration ppc440.boot
simics> continue or run, you can also use c or r.
以后可以从file-->open checkpoint打开ppc440.boot这个文件,可回到保存时的工作状态。
PS:这点真的很爽,可以任意时刻中断虚拟机然后睡觉,哈哈~
模拟机和真机的文件复制
# mount /host
# ls /host /host目录为C盘根目录
# mount /host -o remount,rw
# cp /etc/inetd.conf /host/inetd.conf
# umount /host
or
running> stop
simics> hfs0.root sim->simcs_base /host目录为simics的工作路径(非安装路径)
simics> continue
# mount /host
# ls /host 再看看,/host路径已经变化
调整模拟机的控制台窗口的大小
使用console.command之类的命令,con0是第一个控制台窗口的编号
simics> con0.no-window
Warning: This command is deprecated. Use .close instead.
Closing console window.
simics> @conf.con0.width=128
simics> @conf.con0.height=60
simics> con0.no-window
Opening console window.
如果不小心关闭了控制台,也可以在simics的控制窗口用con0.no-window命令来重新打开控制台
从simics向模拟机的控制台发送字符串
simics> con0.input "ls /"
复制控制台窗口的信息
复制 控制台窗口的内容,只需用鼠标拉选
控制simics的CPU使用率
默认情况下,simics以尽可能快的模式运行,会消耗大量的CPU时间,而且会导致有时模拟机器的时钟跑得比真机快。可用以下命令让simics和物理机保持同步。
simics>enable-real-time-mode
使用这个命令能有效的降低物理机的能耗和CPU使用率,要进一步降低simics对物理机的CPU使用率,可以指定一个比率参数,默认为100(100%):
simics>enable-real-time-mode 80
查看被执行的指令数量、周期以及模拟时间:
simics> ptime
processor steps cycles time [s]
cpu0 213194707332 213194707332 1269.016
====================================================================
以下的具体内容需回复可见:
模拟的Obp
安装Solaris v4
构建虚拟的局域网
定制虚拟机型
另外,附件也需回复后才可下载!
====================================================================
以下内容跟帖回复才能看到
==============================
3、OBP来了 ^_^
1、选择workspace目录中target/sunfire/peanut-sol10-cd-install1.simics
出现提示:
Cannot find the CD-ROM specified as : sol-10-u2-ga-sparc-v1.iso
Please add this file, or edit the path in this script.
2、在workspace目录中target/sunfire/中创建一个文件,名为sol-10-u2-ga-sparc-v1.iso,我们只需要OBP,所以随便给个空文件都可以。
3、再次打开peanut-sol10-cd-install1.simics,搞定:
E6500就这么到手了,爽不爽:
哈,有OBP用了,爽吗?哥们,爽就点这里推荐一下啦,多谢多谢:
http://blog.chinaunix.net/u2/star.php?blogid=12442
4、安装solaris 10 u4 ^_^
1、sun网站下载solaris 10 for sparc版本:
sol-10-u4-ga-sparc-dvd-iso-a.zip、sol-10-u4-ga-sparc-dvd-iso-b.zip
2、解开后得到两个iso文件:
sol-10-u4-ga-sparc-dvd-iso-a、sol-10-u4-ga-sparc-dvd-iso-b
3、在dos下合并:
F:/>copy /b sol-10-u4-ga-sparc-dvd-iso-a + sol-10-u4-ga-sparc-dvd-iso-b sol-10-u2-ga-sparc-v1.iso
sol-10-u4-ga-sparc-dvd-iso-a
sol-10-u4-ga-sparc-dvd-iso-b
已复制 1 个文件。
4、把sol-10-u2-ga-sparc-v1.iso文件放到simics的工作路径,比如F:/Virtutech Simics/workspace/targets/sunfire/
5、如果有,删除simics工作路径下的F:/Virtutech Simics/workspace/peanut-sol10-install.disk
6、打开F:/Virtutech Simics/workspace/targets/sunfire的peanut-sol10-cd-install1.simics
7、开始自动进入jumpstart安装,爽呆,simics的jumpstart配置是u2,和u4的需求有所不同,因此在安装过程中还需要指定少量参数
8、老规矩,上下箭移动,空格选择,F2和ESC-2确定。注:若F2无效,就用ESC-2
9、成功啦,成功啦!!
5、多台模拟机简单联网
1、file-->new session-->ebony-linux-multi.simics
2、in the simics window,input "continue" or "run" or press "run" botton
这个是定制了三台IBM PowerPC机器配置的模版文件,IP地址分别是10.10.0.50,10.10.0.51,10.10.0.52:
3、构建联网环境
[Copy to clipboard] [ - ]CODE:
暂停模拟机
simics> stop
[ebony0_cpu0] v:0xc0003d1c p:0x000003d1c lwz r0,20(r2)
构建以太网链路
simics> new-ethernet-link
[ethlink0 info] Adjusting latency to 1e-005 s because the min-latency changed
Created ethernet-link ethlink0
把模拟机的网卡连到新建的以太网
simics> ebony0_emac0.connect ethlink0
simics> ebony1_emac0.connect ethlink0
simics> ebony2_emac0.connect ethlink0
查看以太网链路信息
simics> ethlink0.info
Information about ethlink0 [class ethernet-link]
================================================
Latency : 10 us
Distribution : local
Filtering : enabled
Devices:
Local devices : ebony0_emac0, ebony1_emac0, ebony2_emac0
Remote devices : none
Real network connection:
Connected : No
继续运行模拟机
simics> c
4、测试网络状况
[Copy to clipboard] [ - ]CODE:
在模拟机的控制台运行ping命令
# ifconfig eth0 | grep inet
inet addr:10.10.0.50 Bcast:10.255.255.255 Mask:255.255.255.0
# ping 10.10.0.51
PING 10.10.0.51 (10.10.0.51): 56 data bytes
64 bytes from 10.10.0.51: icmp_seq=0 ttl=64 time=0.0 ms
64 bytes from 10.10.0.51: icmp_seq=1 ttl=64 time=0.0 ms
64 bytes from 10.10.0.51: icmp_seq=2 ttl=64 time=0.0 ms
--- 10.10.0.51 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.0/0.0/0.0 ms
# ping -c 1 10.10.0.52
PING 10.10.0.52 (10.10.0.52): 56 data bytes
64 bytes from 10.10.0.52: icmp_seq=0 ttl=64 time=0.1 ms
--- 10.10.0.52 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
6、定制虚拟机型 ^_^
QUOTE:
updating...
it's too difficult,do anybody can make a contribution for it?
==============================
【题外话】
FREE:
用simics定制各种机型和配件是simics软件的深层次应用,本人也仅是摸到simics的冰山一角,欢迎各位同好在此帖留下各自的心得和经验,我一定会将不断把各位的好心水以引用方式更新到这个主题帖。