- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
01系统编程基础知识
01 -- 系统编程基础
一、本门课程的目标
1、系统编程特点:
学习编写系统软件的方法和技巧,系统软件运行时与内核或系统核心库直接进行交互,以实现对系统资源的有效利用。常见的系统软件有:shell,vim,gcc , gdb 等;这些软件有别于一般应用软件(如GUI用户界面程序),需要理解更多的操作系统内部的知识。
系统编程与应用编程比,最主要的特点是要求程序员必须对程序运行的系统硬件及操作系统有较为深入和全面的了解。
2、三大工具
系统调用:是为了从操作系统获得服务或资源而用户空间向内核发起的函数调用。用户空间程序是没有权限直接操作内核数据的,只能通过调用系统调用来实现。
C库(libc):是Linux应用程序的核心,常被高级的库封装,由GNU libc提供,简称glibc。它的内容除了标准的C库,还提供了系统调用的封装、线程支持和基本应用工具。
C编译器:Linux中,标准的C编译器是GNU编译器工具集(gcc)。
3、系统编程的分类(就业的方向):
操作系统维护:系统引导、内核层功能实现编译与修改等。
驱动开发:外部设备驱动开发
用户空间应用开发:致力于某个领域的应用功能实现,如:GUI、财会软件等
二、平台基础
一台功能完备,可以正常使用的计算机组成示意图
计算机硬件组成:
三、操作系统基础
设计操作系统的目的(管理)
(1)文件管理:又称为信息管理;
(2)内存管理:实质是对存储“空间”的管理;
(3)设备管理:对硬件设备的管理,包括对输入输出设备的分配、启动、完成和回收;
(4)进程管理:实质上是对处理机执行“时间”的分配和调度,即如何将CPU真正合理地分配给每个任务。
程序员与操作系统的关系
常用操作系统
1、windows发展过程:
1981年DOS1.0运行在Intel 8086、内存8K,汇编语言实现,磁盘只能包含一个目录,最多支持64个文件;DOS 2.0 /DOS 3.0
1990年,微软发布Windows 3.0,它仍然需要运行在DOS之上的。
1993年发布Windows NT(3.1)系统性能提升,提供单用户环境或多用户环境下的多任务
2000年发布Windows 2000,增加支持分布处理的服务和功能, 是多任务操作系统
2001年,微软发布了Windows XP,现在还在用,但已经不支持服务。
2007年,发布了Windows Vista
2009年,发布了win7;
2012年,发布了win8
2、Linux
简介:Linux是一个GNU项目,由芬兰一名计算机科学专业的学生Linus Torvalds最初发起与编写的,并在Internet上公布了源码。除了由很多个程序员使用以外,Linux已经明显地渗透到了业界,因为Linux内核的质量。很多天才的程序员对当前版本都有贡献;而且,Linux是高度模块化和易于配置的,这使得它很容易在各种不同的硬件平台上显示出最佳的性能;另外,由于可以获得源代码,便于裁剪和定制。
内核组件:如图
四、简称或缩写:
ANSI,(American National Standards Institute美国国家标准学会)
ISO,(International Organization for Standards国际标准化组织)
IEC,(International Electrotechnical Commission国际电工委员会)
IEEE,( Institute of Electrical and Electronics Engineers电气与电子工程师协会)
POSIX;( Portable Operating System Interface可移植操作系统接口)
Single UNIX Specification ;(单一UNIX规范)
五、UNIX及类UNIX的实现标准
SVR4(UNIX System V Rlease 4) :ATT
BSD:伯克利分校
FreeBSD:伯克利分校
Linux2.4.22:Linus Torvalds
Mac OS X 10.3
Solaris 9:SUN
根据POSIX来实现的。
计算机硬件
操作系统
各种应用软件
处理器(processor/CPU) :控制操作、执行数据处理
存储器
内部存储程
外部存储器
输入、输出(I/O):计算机与外部环境之间交换数据,终端、通信设备等
地址总线
数据总线
文档评论(0)