第7章 matlab程序设计.ppt

上传人:bao****ty 文档编号:143818879 上传时间:2020-09-02 格式:PPT 页数:73 大小:3.57MB
返回 下载 相关 举报
第7章 matlab程序设计.ppt_第1页
第1页 / 共73页
第7章 matlab程序设计.ppt_第2页
第2页 / 共73页
第7章 matlab程序设计.ppt_第3页
第3页 / 共73页
第7章 matlab程序设计.ppt_第4页
第4页 / 共73页
第7章 matlab程序设计.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《第7章 matlab程序设计.ppt》由会员分享,可在线阅读,更多相关《第7章 matlab程序设计.ppt(73页珍藏版)》请在金锄头文库上搜索。

1、第7章 Linux程序设计基础,7.1 概述,7.1.1 Linux编程 Linux软件开发一直在Internet环境下讲行。这个环境是全球性的,编程人员来自世界各地。只要能够访问Web站点,就可以启动一个以Linux为基础的软件项目。Linux开发工作经常是在Linux用户决定共同完成一个项目时开始的。当开发工作完成后,该软件就被放到Internet站点上,任何用户都可以访问和下载它。由于这个活跃的开发环境,新的以Linux为基础的软件功能日益强大,而且呈现爆炸式的增长态势。 大多数Linux软件是经过自由软件基金会(Free Software Foundation)提供的GNU(GNU 即

2、 GNUs not UNIX)公开认证授权的,因而通常被称作GNU软件。GNU软件免费提供给用户使用,并被证明是非常可靠和高效的。许多流行的Linux实用程序如C编译器、shell和编辑器都是GNU软件应用程序。,Linux程序需要首先转化为低级机器语言即所谓的二进制代码以后,才能被操作系统执行。例如编程时,先用普通的编程语言生成一系列指令,这些指令可被翻译为适当的可执行应用程序的二进制代码。这个翻译过程可由解释器一步步来完成,或者也可以立即由编译器明确地完成。shell编程语言如BASH、TCSH、GAWK、Perl、Tcl和Tk都利用自己的解释器。用这些语言编制的程序尽管是应用程序文件,但

3、可以直接运行。编译器则不同,它将生成一个独立的二进制代码文件然后才可以运行。,1GNU风格 (1)函数返回类型说明和函数名分两行放置,函数起始字符和函数开头左花括号放到最左边。 (2)尽量不要让两个不同优先级的操作符出现在相同的对齐方式中,应该附加额外的括号使得代码缩进可以表示出嵌套。 (3)按照如下方式排版do-while语句: (4)每个程序都应该以一段简短的说明其功能的注释开头。 (5)请为每个函数书写注释,说明函数是做什么的,需要哪些入口参数,参数可能值的含义和用途。如果用了非常见的、非标准的东西,或者可能导致函数不能工作的任何可能的值,应该进行特殊说明。如果存在重要的返回值,也需要说

4、明。 (6)不要声明多个变量时跨行,每一行都以一个新的声明开头。 (7)当一个if中嵌套了另一个if-else时,应用花括号把if-else括起来。 (8)要在同一个声明中同时说明结构标识和变量或者结构标识和类型定义(typedef)。先定义变量,再使用。,7.1.2 Linux编程风格,(9)尽量避免在if的条件中进行赋值。 (10)请在名字中使用下划线以分割单词,尽量使用小写;把大写字母留给宏和枚举常量,以及根据统一惯例使用的前缀。例如,应该使用类似ignore_space_change_flag的名字;不要使用类似iCantReadThis的名字。 (11)用于表明一个命令行选项是否给出

5、的变量应该在选项含义的说明之后,而不是选项字符之后被命名。 2Linux 内核编程风格 (1)Linux内核缩进风格是8个字符。 (2)Linux内核风格采用K return 0; 接下来就要使用 Autoconf 及 Automake 来产生Makefile文件,步骤如下: (1)autoscan 产生一个configure.in的模板,执行 autoscan 后会产生一个configure.scan 的文件,可以用它做为configure.in文件的模板: (2)编辑configure.scan文件,如下所示,并且把文件名改成configure.in (3)执行aclocal和autoco

6、nf ,分别会产生 aclocal.m4 及 configure 两个文件: (4)编辑Makefile.am文件,内容如下: (5)执行automake -add-missing ,Automake 会根据 Makefile.am产生一些文件,包含最重要的Makefile.in:,(6)最后执行 ./configure : 现在你的目录下已经产生了一个Makefile文件,执行make命令就可以开始编译hello.c 成执行文件,最后执行./hello: # make gcc -DPACKAGE=hello -DVERSION=1.0 -I. -I. -g -O2 -c hello.c gc

7、c -g -O2 -o hello hello.o # ./hello Hello! GNU!,第8章 网络安全,8.1 计算机网络安全基础知识,8.1.1 网络安全的含义,网络安全从其本质上来讲就是网络上的信息安全,其所涉及的领域相当广泛。这是因为在目前的公用通信网络中存在着各种各样的安全漏洞和威胁。从广义来说,凡是涉及到网络上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论,都是网络安全所要研究的领域。下面给出网络安全的一个通用定义: 网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断

8、。 因此,网络安全在不同的环境和应用中会得到不同的解释。 (1)运行系统安全,即保证信息处理和传输系统的安全。包括计算机系统机房环境的保护,法律、政策的保护,计算机结构设计上的安全性考虑,硬件系统的可靠安全运行,计算机操作系统和应用软件的安全,数据库系统的安全,电磁信息泄露的防护等。它侧重于保证系统正常的运行,避免因为系统的崩溃和损坏而对系统存储、处理和传输的信息造成破坏和损失,避免由与电磁泄漏,产生信息泄露,干扰他人(或受他人干扰),本质上是保护系统的合法操作和正常运行。,(2)网络上系统信息的安全。包括用户口令鉴别、用户存取权限控制、数据存取权限、方式控制、安全审计、安全问题跟踪、计算机病

9、毒防治、数据加密等。 (3)网络上信息传播的安全,即信息传播后的安全。包括信息过滤等。它侧重于防止和控制非法、有害的信息进行传播后的后果。避免公用通信网络上大量自由传输的信息失控。它本质上是维护道德、法律或国家利益。 (4)网络上信息内容的安全,即讨论的狭义的“信息安全”。它侧重于保护信息的保密性、真实性和完整性。避免攻击者利用系统的安全漏洞进行窃听、冒充和诈骗等有损于合法用户的行为。它本质上是保护用户的利益和隐私。 计算机网络安全的含义是通过各种计算机、网络、密码技术和信息安全技术,保护在公用通信网络中传输、交换和存储信息的机密性、完整性和真实性,并对信息的传播及内容具有控制能力。网络安全的

10、结构层次包括:物理安全、安全控制和安全服务。 可见,计算机网络安全主要是从保护网络用户的角度来进行的,是针对攻击和破译等人为因素所造成的对网络安全的威胁。而不涉及网络可靠性、信息的可控性、可用性和互操作性等领域。,8.1.2 网络安全的特征,网络安全应具有以下四个方面的特征: (1)保密性是指信息不泄露给非授权的用户、实体或过程,或供其利用的特性。 (2)完整性是指数据未经授权不能进行改变的特性,即信息在存储或传输过程中保持不被修改、不被破坏和丢失的特性。 (3)可用性是指可被授权实体访问并按需求使用的特性,即当需要时应能存取所需的信息。网络环境下拒绝服务、破坏网络和有关系统的正常运行等都属于

11、对可用性的攻击。 (4)可控性是指对信息的传播及内容具有控制能力。,8.1.3 对网络安全的威胁,与网络连通性相关的有三种不同类型的安全威胁: (1)非授权访问(Unauthorized Access)指一个非授权用户的入侵。 (2)信息泄露(Disclosure of Information)指造成将有价值的和高度机密的信息暴露给无权访问该信息的人的所有问题。 (3)拒绝服务(Denial of Service)指使系统难以或不能继续执行任务的所有问题。,8.1.4 网络安全的关键技术,从广义上讲,计算机网络安全技术主要有: (1)主机安全技术: (2)身份认证技术: (3)访问控制技术:

12、(4)密码技术: (5)防火墙技术: (6)安全审计技术: (7)安全管理技术:,8.1.5 Linux系统的网络安全策略,1简介,随着InternetIntranet网络的日益普及,采用Linux网络操作系统作为服务器的用户也越来越多,这一方面是因为Linux是开放源代码的免费正版软件,另一方面也是因为较之微软的Windows NT网络操作系统而言,Linux系统具有更好的稳定性、效率性和安全性。在InternetIntranet的大量应用中,网络本身的安全面临着重大的挑战,随之而来的信息安全问题也日益突出。以美国为例,据美国联邦调查局(FBI)公布的统计数据,美国每年因网络安全问题所造成的

13、经济损失高达75亿美元,而全球平均每20秒钟就发生一起Internet计算机黑客侵入事件。一般认为,计算机网络系统的安全威胁主要来自黑客攻击和计算机病毒2个方面。那么黑客攻击为什么能够经常得逞呢?主要原因是很多人,尤其是很多网络管理员没有起码的网络安全防范意识,没有针对所用的网络操作系统,采取有效的安全策略和安全机制,给黑客以可乘之机。 由于网络操作系统是用于管理计算机网络中的各种软硬件资源,实现资源共享,并为整个网络中的用户提供服务,保证网络系统正常运行的一种系统软件。如何确保网络操作系统的安全,是网络安全的根本所在。只有网络操作系统安全可靠,才能保证整个网络的安全。因此,详细分析Linux

14、系统的安全机制,找出可能存在的安全隐患,给出相应的安全策略和保护措施是十分必要的。,2Linux网络操作系统的基本安全机制,Linux网络操作系统提供了用户帐号、文件系统权限和系统日志文件等基本安全机制,如果这些安全机制配置不当,就会使系统存在一定的安全隐患。因此,网络系统管理员必须小心地设置这些安全机制。 (1)Linux系统的用户帐号 (2)Linux的文件系统权限 (3)合理利用Linux的日志文件,3Linux网络系统可能受到的攻击和安全防范策略,Linux操作系统是一种公开源码的操作系统,因此比较容易受到来自底层的攻击,系统管理员一定要有安全防范意识,对系统采取一定的安全措施,这样才

15、能提高Linux系统的安全性。对于系统管理员来讲特别是要搞清楚对Linux网络系统可能的攻击方法,并采取必要的措施保护系统。 (1)Linux网络系统可能受到的攻击类型 “拒绝服务”攻击 、“口令破解”攻击 、“欺骗用户”攻击、 “扫描程序和网络监听”攻击 。,(2)Linux网络安全防范策略 仔细设置每个内部用户的权限 、确保用户口令文件/etc/shadow的安全 、加强对系统运行的监控和记录 、合理划分子网和设置防火墙 、定期对Linux网络进行安全检查 、制定适当的数据备份计划确保系统万无一失 。,4加强对Linux网络服务器的管理,合理使用各种工具,(1)利用记录工具,记录对Linu

16、x系统的访问 (2)慎用Telnet服务 (3)合理设置NFS服务和NIS服务 (4)小心配置FTP服务 (5)合理设置POP-3和Sendmail等电子邮件服务 (6)加强对WWW服务器的管理,提供安全的WWW服务 (7)最好禁止提供finger 服务,8.1.6 Linux网络安全工具,1sudo,sudo是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。一个明显的用途是增强了站点的安全性,如果用户需要每天以root身份做一些日常工作,经常执行固定的几个只有root身份才能执行的命令,那么用sudo是非常适合的。 下面以Redhat 9.0为例,介绍sudo的安装及设置过程: 一般情况下,Redhat 9.0中都已经缺省安装了当前较新的版本sudo-1.6.6-3。如果你的系统中没有安装,你能从下面的地址中下载for Redhat Linux的rpm package。 ftp:/ftp.rediris.es/sites/ 执行#rpm -ivh sudo* 进行安装,然后用/usr/sbin/visudo编辑/etc/sudoers文件。 sudo

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号