ubuntu14.04无线共享设置
在ubuntu中设置无线共享是很方便的,有许多开源的工具可以使用,例如hostapd+dnsmasq
,但是升级到14.10之后似乎以前的方法不太适用了,未知是因为否与系统的network-manager冲突的关系。即使如此,不妨就使用network-manager来设置,但是总也不成功。经过一番google,终于找到了一个可行的方案。
在网络设置中共享
- 点击桌面右上角的网络连接图标,选择最后一项
edit connections...
在ubuntu中设置无线共享是很方便的,有许多开源的工具可以使用,例如hostapd+dnsmasq
,但是升级到14.10之后似乎以前的方法不太适用了,未知是因为否与系统的network-manager冲突的关系。即使如此,不妨就使用network-manager来设置,但是总也不成功。经过一番google,终于找到了一个可行的方案。
edit connections...
继续上一节,学习simics hindsight使用,命令行参数部分。
simics常用命令按类别分组,要查看分类,可以输入help。
|
|
使用help catogory
打印该分类下的命令清单:
|
|
继续学习simics的使用。
simics CLI是一种基于文本的高级用户界面,内置帮助系统,上下文敏感可用tab补全,支持脚本编程,作为hindsight的一部分一起提供。
如果使用了GUI,那么可以通过Control Window的Tools → Command Line Window
来启动。Eclipse中位于Console View中。如果未使用GUI,则位于启动simics的shell中。
在命令行中输入命令+参数来使用,可以在reference manual中找到许多例子,以下是两个例子:
以短横线开头的选项都是flag并且总是可选的,flag长度可能不止一个字符,且不能以-xy的形式来表示-x -y,位置不敏感,可位于参数列表中的任意位置。
以下介绍一些关于模拟的基本概念。
Simics是系统层指令集模拟器,也就是说:
指令级的模拟,一次执行一个指令
模拟硬件的二进制接口,任何硬件上运行的软件在target上也能运行
包括firmawre,硬件驱动,操作系统和用户程序在内的任何软件都能在target上运行。
simics的时间系统非常简单,例如它默认所有指令的执行时间是一样的,利用这点将可以编写简单程序来区别模拟与真实系统。
Simics有强大的调试和观察功能:
观察和设置**register,memory和硬件状态**
设置断点和观察点
以脚本实现上述功能
有了上述支持,无须在target上安装任何调试程序,因此调试行为也对target及之上的软件是完全透明的。
Simics由多个产品和可选的add-on组成,此文档介绍它们分别是什么,彼此如何交互。
软件开发人员使用的主要/基本的产品,为Simics平台提供用户接口和软件调试接口。HindSight可以通过Eclipse来使用,也可以单独使用。如果单独使用,可以用通用的如GDB这样的或者其它IDE的软件调试器与之连接。
HindSight提供脚本编程、设备和系统登录、低层Debugging,断点和WatchPoint能力,还提供独有的对调试隐蔽Bug极为有用的反向执行能力。
HindSight还提供save和load能力,ckeckpoints包含系统(CPU,内存,软件等)状态的所有信息,你可以将其只在到硬盘当中,随时可以还原系统状态。
Simics还提供一个虚拟板卡,所谓的“Quick Start Platform. QSP”,它是一个包含有限合成物和专门模拟设备的简单虚拟平台。用户可以通过它来上手和熟悉Simics特性。因为它的设备模型并不与真实物理设备对应,所以不能用它来运行真正的firmware。
Simics是一种支持定义、开发和部署数字系统的模拟器,具有快速、准确、可伸缩和扩展的特点,为工程人员提供了新的系统开发途径。Simics是一种完全系统模拟平台,能快速、确定且可控地运行未经修改的二进制文件。在硬件昂贵、稀缺甚至不存在时,为早期软件开发和测试提供理想的环境。Simics对Intel内部部门是免费使用的。
Simics可以加速系统设计,软件开发和任何数字系统的部署,不论是简单的CPU还是复杂混合的架构,多平台,计算机网络系统。Simics支持混合CPU类型的异构平台,从单CPU到数百SoC通过Ethernet连接的多机架系统。Simics提供不限于ARM, H8, MIPS, SPARC, SH, TI C64, and IA (x86)架构模型及周边系统。
Simics可以模拟任何数字系统,基本的CPU+内存,定制的FPGA或ASIC,单个的板卡或插满板卡的机架,大型复杂的混合架构系统模型可以由现成的若干处理器家庭,数百计的IO设备和标准通信,背板和网络协议组成。
认识Linux的启动过程对每一个Linux使用者和管理员都是必要的,它能使你一幅清晰的Linux如何工作的图景。本文会介绍按下电源到登录提示出现过程中都经历了哪些过程。下图会给你一个简洁明了的整体认识。
简要启动过程:
1. 按下电源键
2. CPU跳到BIOS
3. BIOS运行POST
4. 寻找第一个可启动设备
5. 加载执行MBR
6. 加载OS
7. 用户提示符
以下是Linux启动过程中的详细阶段。
1) 系统启动(硬件)
2) Boot Loader阶段1(MBR加载)
3) Boot Loader阶段2(GRUB加载)
4) Kernel
5) INIT
6) 用户提示符
CPU加电后执行的第一个指令就是将控制交给BIOS进行开机自检,BIOS会执行两个任务:
执行POST
选择第一个可启动设备
什么是Zygot,init.rc,和Linux的启动过程有什么区别等。
电源接通以后,Boot Rom从一个写入硬件的预定义的地址开始执行,它会加载BootLoader到内存中执行。
(注:类似PC的BIOS)
这是一个在android之前运行的小程序,它不是android的一部分,是厂商设置锁的其它限制的地方。
(注:类似Linux的Grub)
Bootloader分两步执行,首先它检测外部Ram并加载一个第二步中要用到的程序。
第二步中,bootloader安装内核运行需要的网络、内存等,它为kernel的特定功能提供配置参数或者输入。
bootloader可以在这里找到:
|
|
legacy的loader包含两个重要部分:
1. init.s:: 初始化栈,置零BSS segment和调用main.c中的call_main()。
2. main.c:: 初始化硬件(硬件,主板,键盘,控制台)和创建Linux tags
linux下的ip
命令有点类似ifconfig
命令,但是更强大,且有意取代它。使用ip命令可以完成多项网络管理操作,ifconfig是net-tools工具下的一个命令,而这个工具已经多年没有维护,已不建议使用的,而iproute2保留并增强了它的许多功能。
许多的Linux发行版都已经内置了iproute2工具集。
ip命令使用CIDR格式来表示MASK,更直观也更方便输入,不用输入长串的255了。
|
|
|
|
一般的VPS只有一个IPv4地址,如果想要拥有IPv6地址,必须使用隧道,隧道是一种overlap技术,即将IPv6的包用IPv4进行再次封装,在两个v4网络的端点间传输,在其它使用网络服务的进程看来与真实的IPv6没有任何区别。
此教程也不限于在VPS上使用,在其它Linux和Mac OS主机上也是可用的,但前提是电脑有公网IPv4地址,MAC OS可能细节稍有不同。
为什么要为VPS创建v6隧道,场景有二:1)利用IPv6从绕过校园网计费网关连接到VPS,进而接入世界;2)IPv4用户也能享用IPv6的PT资源。
先来看建立v6隧道之前的VPS网络情况,顺带一提我给VPS装的CentOS6系统:
首先你要有一个隧道服务的提供商,推荐tunnelbroker.net,本人长期使用,比较稳定。
注册完成以后,点击Create Regular Tunnel
,在IPv4 Endpoint (Your side)
填入你的VPS的IPv4地址,在列表中选择一个离你的VPS最近的Server创建隧道,尽量使延迟最小。