没有合适的资源?快使用搜索试试~ 我知道了~
尚观科技linux学习笔记.doc
需积分: 10 21 下载量 150 浏览量
2013-12-19
23:42:30
上传
评论
收藏 1.18MB DOC 举报
温馨提示
尚观科技linux学习笔记.doc
资源推荐
资源详情
资源评论
尚观科技 linux
第一节、对于学习 linux 学习建议
总体建议
1、从兴趣开始,对于将来要在 IT 方面从事工作的人来说,学习 linux 事一个必须的事情。
现在大型的 IT 企业的公司,其后台的服务器基本都是搭建的 linux 集群;
2、避免工具型的学习,要学习起本质,因为当你学习了本质之后,不管是在那个平台,
用哪种工具都很容易上手。比如你学习了 VB 或者 VC 这些的话,对于在其他平台或者其
他工具的学习很不利,加入你深入的学习了必须向 C、java 等语言,将在不同的平台受用;
3、理解 OOS 开源文化;
4、从项目开始的需求,反向学习,看你要做的项目需要什么,然后开始针对你的项目的
实际需求开始。现在学校的教育都是按部就班的进行的,学校学习的东西基本这是一个概
念,没有形成体系;
具体建议:
1、抛开门户之见,windows 和 linux 个有长处,windows 在客户端占有优势,而 linux 是
占据服务器端,并且高手是不论平台的;
2、学习 linux 只是学习的开始,要知道加入你一个平台用的好的话,但是不可以在上面
做出一个产品或者做出属于自己的东西的话,那你仅仅开源被称作是修电脑的。并且学习
好了 linux 之后,开开源世界里面,有 GUN 里面有许多东西是围绕 linux 的,需要将周围的
东西熟透并且用熟;
3、从开发者的角度学习,当看到一个软件的时候,不要被他所傻瓜化,要从开发者的角
度思考这个软件是怎么做出来的,在 linux 下面,安装很多软件基本都是要自己去编程实现
的;
4、学习 unix 触类旁通,因为 linux 有许多和 unix 相同之处,其实在 unix 的基础上修改过
来的,人们经常乘 linux 为类 unix(like unix);
5、不管学习什么,关键是学的怎么样。
第二节、linux 的概述
首先来介绍一下操作系统的角色:
操作系统
如图所示,操作系统最重要的是内核,内核的作用就是对硬件进行管理,
而应用程序是不开源直接作用于内核的,他必须通过操作系统提供的系统调用接口来对作
应用程序
系统调用
内
核
硬
件
用于内核,然后内核作用于硬件。但是不同的操作系统的内核是不同的,甚至是不兼用的,
就像 windows 和 linux 一样,在 windows 上面运行的应用软件是通过 windows 提供的接口来
进行对硬件的操作,而对 linux 无法进行,因为两种系统提供的接口不一样。在编写操作系
统的时候,他们就针对程序员提供不同的接口,让他们根据接口来编写程序。最开始
Torvalds 在写 linux 的时候其实仅仅只有内核,其内核驱动的是 368 的计算机。
Linux 的历史:
在进行介绍 linux 的时候,就必须要知道他的历史。但是要知道 linux 的历
史,肯定是绕不开 unix 的。因为 linux 就是按照 unix 来编写的,现在又很多人都叫 linux 为
类 unix(like unix)。在 1969 年的时候 Ken Thompson 用汇编语言编写了 Unics(后面才叫
UNIX)。但是由于他是用汇编语言编写的,所以当时的 unix 的可移植性差,到了 1973
年,Rutchie 才有高级语言——C 编写的第一个正式的 Unix 内核。这才真正意义的诞生了
Unix。当时的 Unix 属于 AT&T,因为当时的贝尔实验室是属于这家公司。重要的强调一下,
C 语言就是为了使 Unix 有可移植性才在 B 语言的基础上改进成的。
在后来,Unix 出现了两个分支,那就是 BSD 和 system V,BSD 当时主要用
于大学实验室免费使用,system V 主要用于商业,当时在后来两个分支出现了版权之争,
在这儿及不用再说明了。目前纯种的 Unix 就是 System V 和 BSD,虽然 System V 不承认
BSD,因为 Unix 是一个商标。
1984 年,谭宁邦在不看 UNIX 内核代码的时候编写 Minix,并且他通过磁
盘销售给需要的人,并且提供源代码。
接下来不介绍 linux,要介绍一下雨 linux 发展起着重要重要作用的一个组
织——GNU。
GNU's 是 GUN's not UNIX 的缩写,是史托曼在 1984 年成立的的一个项目,
这个项目的就是创建一个自由的、开放的 UNIX 操作系统,但是由于 UNIX 是不开放源代
码的,所以说非常困哪,所以史托曼反其道而行之,创建开源软件在 GNU 上面运行。之
后为了方便软件的编写,GNU 开始编写 C 语言的编译程序,由此产生了 GCC,并且史托
曼利用卖编译器 Emacs 获得了部分资金,用于支持 GNU 项目的前行,并且成立了自由软
件基金会(free software foundation,FSF)。
1985 年,为了避免所开发的软件因为专利带来问题,所以草拟了通用公共
许可证(general public license,GPL)避免的这种问题的发生。
1991 一年,芬兰学生托瓦兹照着 minix 编写了 linux 内核,并且放在网上给
人免费下载修改,着直接导致了后来 linux 的不断改进。
在 linux 诞生之后,由于其内核是免费使用的,因此 linux 加入到了 GNU 中
去了,着就解决了 GNU 没有操作系统的尴尬局面,之后越来越多的程序员根据 linux,不
断的开发出了适合在 linux 上面运行的开源软件,也就形成了今天的很多软件程序员围绕着
在 linux 周围开发软件,并且不断为改进 linux 做出贡献。值得一提的是 linux 的开发、改进、
修改这些工作都是网络虚拟团队进行的,大家分布在不同的国家地区,只是通过互联网互
相学习。
关于 linux 的版本就不在这儿提及了。
第三节、UNIX like 学习的要点
Linux 基本都是文本进行操作。学习 linux 和学习 UNIX 基本是一样的,只
要精通了其中一项,其他的都会触类旁通。
学习要点:
1、不要用 windows 来要求 UNIX,因为 windows 主要使用在客户端,而 UNIX 主要是运
用在服务器,要是用 windows 来要求 UNIX 的话,那就没有学习的意义,包括 LINUX 和
UNIX 都是一样的。比较简单的技术学习的学习的人就比较多,学习的门槛就低。难度大
的话,学习的人就少,收益可能就更大。
2、UNIX 与 DOS 使用命令。任何系统的操作不外乎三种,commend、TUI、GUI。
3、UNIX 和 windows 占领着不同的领域,UNIX 占领的是服务器,主要是用命令行 ,
windows 占领者客户端,主要是用 GUI,也可以使用命令行。搞服务器端的钱景更强。
4、两者的思维习惯不同。UNIX 重视喜欢用小的程序来组成大的应用。Windows 不可以,
他只能用大的程序,功能集成的程序进行。为什么在 UNIX 可组成不同的程序呢?因为他
们都遵循共同规则。同时在 UNIX 下面只有很少的交互,在 windows 下有很多不同的交互
行为。Windows 更是倾向于图形交互界面。
UNIX Like 系统的主要原则:
1、没有信息就是好事,加入加入一个程序或者操作操作成功的话,一般不会有信息输出,
表示成功结束。
2、一切都是文件,包括内核中的配置。连硬件等设备都是文件的形式存在。只需要简单
的操作就可把所有的资料归零,包括所有硬盘里面的资料。
3、配置的信息以文本的信息保存着。可以通过操作查看所有的配置。可以通过文本的操
作修改配置,要是自己像修改配置而没有写进文本里面保存的话,重新启动的时候将恢复
原样。而 windows 是注册表等存在。
4、避免不必要的用户交互,以参数来完成信息传递,直接一个命令让他自己去完成操作。
而 windows 不是这样,需要不停地交互,保证操作的合法性。
5、组合小的程序老完成复杂的操作。
第四节、linux 操作系统的基本结构
Linux 的基本机构是:
1、内核(Kernel)
2、模块(modules)
3、库(Lib)
4、Shell
5、工具、应用程序(tool)
其中 shell 和 tool 可以放在一个部分里面,即应用程序里面,所以说 Linux 主要是四个部
分
在上面的记录中已经介绍了操作系统的结构,但是现在我在将两本书进行交叉的学习,
所以在这儿同样描述一下操作系统,但是以不同的结构,更直观的详细的描述:
J
VM ( java 虚
拟机)
剩余27页未读,继续阅读
资源评论
fasions
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于C语言的系统服务框架.zip
- (源码)基于Spring MVC和MyBatis的选课管理系统.zip
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功