- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Cygwin原理及Shell简介
Cygwin原理及Shell简介 安装、设置及应用举例 Archer Zhang JUNE.18.2007 Cygwin是什么? Cygwin是一个在Window下运行的类似linux的环境。它包含一个dll(Cygwin1.dll),这个DLL的作用是作为一个模拟层提供POSIX(可移植操作系统接口)系统调用接口,Cygwin还提供了一系列的linux下一样的工具(注:例如cat ,tar,VI,GCC等)。Cygwin可以在Windows95以后的所有Window平台上运行,Cygwin提供的API尽量与UNIX规范和linux实际相一至 。 Cygwin能干什么? Windows的Dos Scripts功能非常薄弱,命令行工具也非常少;如果您对Linux比较熟悉,那么Cygwin可以帮助您在Windows下面使用强大的Bash,以及使用数量繁多的Linux命令,通过Scripts,可以更加高效的完成系统管理工作 (不可否认,很多时候,命令行工具比图形界面工具要方便快捷) 如果您刚进入Linux的世界,使用Cygwin可以让你在Windows下面练习Linux的Bash,以及常用工具。而不需要安装Linux,也不用担心Windows被破坏。 为什么选择Cygwin 安装简单,只需要在windows下安装一下就可使用; 安求底,几乎无需太多学习就可以使用。易用实用,可以方便使用windows平台下的一切功能与cygwin配合完成工作,可以利用已有的windows批处理脚本,各种工具程序,编辑器等各种程序。可以与现有PC模拟器环境很好地溶合。 如果在LINUX下环境下,我们就需要重写模拟器,且没有大家熟练使用的Visual Studio环境可用。 Cygwin的原理及历史(一) Cygwin 由Cygnus Solutions于1995年开始开发(现已是red hat 公司的一个部分)。 首先要做的是增强开发工具(gcc,gdb,gas,等)的功能, 以使这些工具能产生和解释WIN32下的目标文件。 其次的任务是要将这些工具移植到Win NT /9X平台上。可以通过重写海量的源代码,来使这些工具能在WIN32的API环境下动行。但是,这就意味着要为每一个工具花巨大的精力与时间。相反,Cygwin采取了与此相当不同的方法,写了一个共享库(它就是Cygwin.DLL), 在Cygwin.dll中增加了WIN32 API所没有的且不可或缺的UNIX形式的API (fork, spawn, signals,select,sockets等)。 Cygwin的原理及历史(二) 我们称这些新的接口为Cygwin API。一旦写成, 我们就可依靠这个Cygwin.dll来构建可以在WIN32上运行的工具,这将用到UNIX上的交叉编译器、连接器。 (注:这里的交叉是指UNIX与window的交叉即操作系统的交叉,而不是硬件平到的交叉如X86与ARM的交叉)为此,需要生成在Windows 9x和NT上运行的能够重新编译自身的工具。由于既没有OS的移植也没有UNIX用户工具(fileutils, textutils, bash, etc...),我们必须使用Cygwin API 建立与GUN上相类似的东西。 Cygwin的原理及历史(三) (注:指GUN上的工具(如gcc)等, 如:使用VC的编译环境来编译使用Cygwin API的且在Cygwin下运行的GCC , Cygwin下最初的GCC的产生原理(鸡生蛋,再生鸡的原理),有了这个gcc就可以使用它来编译任何软件了,包括gcc本身 )。另外,由于大部分工具在建立之初是针对自身所在平台的(LINUX平台),所以必须要修改他们的配置脚本以适应交叉编译。与配置的改变相比,几乎没有在源码级进行改动。在Bash中运行开发工具和用户工具,从GUN配置机制的观点来看,windows 9x 和NT就像是加入了UNIX的迷人特性。自适应平台的目标在1996年10月,随着17.1beta版的发布最终实现了。 我们使用Cygwin做了什么及不足? Cygwin的用处: 利用cygwin的shell编写脚本处理各种开发事务 利用cygwin下的交叉编译工具链编译内核 利用cygwin下的交叉编译工具链编译应用程序 Cygwin的不足: Cygwin缺少LINUX平台下的调试工具 Cygwin缺少LINUX平台下的性能分析工具 从哪里下载Cygwin安装程序 下载得到一个Setup.exe 程序,该程序是一个下载与安装管理程序,使用这个程序来下载
文档评论(0)