Linux设计准则



 计算机体系结构:

运算器

控制器

存储器,内存,编址

输出设备

输入设备

Linux内核功能:

进程管理
内存管理
文件系统
网络功能
硬件驱动
安全机制

Linux的基本原则:

1、由目的单一的小程序组成;组合小程序完成复杂任务;

2、一切皆文件;

3、尽量避免捕获用户接口;

4、配置文件保存为纯文本格式;

Linux开源许可:

GNU: GNU is Not Unix,GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。Richard Stallman最早是在net.unix-wizards新闻组上公布该消息,并附带《GNU宣言》等解释为何发起该计划的文章,其中一个理由就是要“重现当年软件界合作互助的团结精神”。为保证GNU软件可以自由地“使用、复制、修改和发布”,所有GNU软件都有一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款,GNU通用公共许可证(GNU General Public License,GPL)。即“反版权”(或称Copyleft)概念。

GPL: (General Public License)和LGPL是GNU的两种License。越来越多的自由软件(Free Software)使用GPL作为其授权声明,如果对GPL一点都不了解,有可能在使用自由软件时违反GPL的授权,恐怕会有被起诉的风险。所以任何公司在使用自由软件之前应该保证在LGPL或其它GPL变种的授权下。

LGPL:LGPL是 GNU Lesser General Public License (GNU 宽通用公共许可证)的缩写形式,旧称GNU Library General Public License (GNU 库通用公共许可证),后来改称作Lesser GPL,即为更宽松的GPL,在宽松程度上与BSDApache,XFree86 许可证相似。

GPLv1:GPL版本1,即最初的版本,发布于1989年一月,其目的是防止那些阻碍自由软件的行为,而这些阻碍软件开源的行为主要有两种(一种是软件发布者只发布可执行的二进制代码而不发布具体源代码,一种是软件发布者在软件许可加入限制性条款)。因此按照GPLv1,如果发布了可执行的二进制代码,就必须同时发布可读的源代码,并且在发布任何基于GPL许可的软件时,不能添加任何限制性的条款。

GPLv2理查德·斯托曼在GPLv2中所做的最大的改动就是增加了“自由还是死亡”("Liberty or Death")这章条款,即第七章 liberty-or-death Presentation。这章中申明道,如果哪个人在发布源于GPL的软件的时候,同时添加强制的条款,以在一定程度上保障和尊重其它一些人的自由和权益(也就是说在一些国家里,人们只能以二进制代码的形式发布软件,以保护开发软件者的版权),那么他将根本无权发布该软件。

GPLv3:在所有的改动中,最重要的四个是:1、解决软件专利问题;2、与其他许可证的兼容性;3、源代码分区和组成的定义;4、解决数位版权管理(DRM) 问题。

Linux两种窗口:

1.GUI: Graphic User Interface 图形化界面

Windows

X-Window

Gnome

KDE

Xface

2.CLI: Command Line Interface 命令行接口

sh

bash

csh

ksh

zsh

tcsh

Linux密码复杂性规则:

1、使用4种类别字符中至少3种;

2、足够长,大于7位;

3、使用随机字符串;

4、定期更换;

5、循环周期足够大;

Linux命令格式:

命令  选项  参数

选项:

短选项: -

多个选项可以组合:-a -b = -ab

长选项: --

参数:命令的作用对象

Linux专业名词:

IDE:集成开发环境(Integrated Development Environment )是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。

dll:动态链接库英文为DLL,是Dynamic Link Library 的缩写形式,DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。

.so:为共享库,是shared object,用于动态连接的

目录:(working directory, current directory)文件,路径映射

路径:从指定起始点到目的地所经过位置

Linux命令类型:
内置命令:(shell内置),内部,内建

外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件

Linux环境变量:

环境变量:命名的内存空间

变量赋值

NAME=Jerry

PATH: 使用冒号分隔的路径

来自为知笔记(Wiz)

时间: 2024-12-15 20:40:19

Linux设计准则的相关文章

《c++编程剖析-问题,方案和设计准则》笔记

1vector的使用 我们只可以使用operator[]和at()去改动那些已经存在于容器中的东西. 而 用reserve()函数不会使得容器中充满函数,需要用resize()函数代替 当不对容器内的元素做任何改动时,记得使用const_iterator 2关于标准成员函数 C++标准库的实现中的成员函数签名并不要求与标准中说明的函数签名一模一样,它可以具有额外的默认函数. 这意味着,不同的标准库的成员函数签名可能不一致. 这也意味着,不存在一个可移植的指向标准库成员函数的指针. 同时也意味着不

数据库设计准则(第一、第二、第三范式说明)

数据库设计准则(第一.第二.第三范式说明) I.关系数据库设计范式介绍 1.1 第一范式(1NF)无重复的列 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性.如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系.在第一范式(1NF)中表的每一行只包含一个实例的信息.简而言之,第一范式就是无重复的列. 说明:在任何一个关系数据库中,第一范式(1NF)是对

android抽屉导航的设计准则

我阅读了google官方的关于抽屉导航的设计准则,这可以给我带来什么帮助?最起码,我可以知道,抽屉导航适用在什么场景中,使用它时要注意什么事项.App的设计是有规则可以依据的,比如,使用抽屉导航时,是有明确的规则和场景的. The navigation drawer(导航抽屉) is a panel that transitions in from the left edge of the screen and displays the app’s main navigation options

类库开发的设计准则 读书笔记 2类型设计准则

MSDN链接:http://msdn.microsoft.com/zh-cn/library/vstudio/ms229036(v=vs.100).aspx 系列文章列表: 1名称准则:http://www.cnblogs.com/liu-meng/p/4181984.html 2类型设计准则:http://www.cnblogs.com/liu-meng/p/4182737.html 类型与命名空间: 使用命名空间将类型组织到相关功能区域的的层次结构中 避免使用较深的命名空间层次结构 避免使用

类库开发的设计准则 读书笔记 1名称准则

MSDN链接:http://msdn.microsoft.com/zh-cn/library/vstudio/ms229042(v=vs.100).aspx 系列文章列表: 1名称准则:http://www.cnblogs.com/liu-meng/p/4181984.html 2类型设计准则:http://www.cnblogs.com/liu-meng/p/4182737.html 大小写的样式: Pascal 大小写 将标识符的首字母和后面连接的每个单词的首字母都大写. 可以对三字符或更多

【干货分享】Google 的设计准则,素材和资源

在谷歌,他们说, “专注于用户,所有其它的就会水到渠成 ”.他们遵循设计原则,寻求建立让用户惊喜的用户体验.谷歌一直挑战自己,为他们的用户创造一种视觉语言,综合优秀设计的经典原则和创新.谷歌设计规范是一份活的文件,因为它们继续更新最新的设计原则和细节.这是一份值得每位设计师收藏和学习的准则. 您可能感兴趣的相关文章 Web 开发中很实用的10个效果[附源码下载] 精心挑选的优秀jQuery Ajax分页插件和教程 12款经典的白富美型 jQuery 图片轮播插件 让网站动起来!12款优秀的 jQ

[译]类型设计准则

本文由 CYJB 译自 Type Design Guidelines(.NET Framework 4.5). 对 CLR 来说,只存在两种类型——引用类型和值类型.但是为了讨论框架设计,我们将类型细分为更多的逻辑组,每组有其特定的设计准则. 类是通用的引用类型,框架中的大部分类型都是类.类因其支持面向对象的大部分特性和普遍适应性而大受欢迎.基类和抽象类是与扩展性相关的特殊逻辑组. 接口是可以由引用类型和值类型实现的类型.它们可以作为引用类型和值类型的层次结构的根,或者模拟多重继承(CLR 本身

流和几条设计准则

时间:2014.05.27 地点:基地 --------------------------------------------------------------------------------------- 一.关于std::cin和std::cout cin和cout的类型是std::istream和std::ostream .这两个类型又分别对应着 std::basic_istream<char> std::basic_ostream<char> 即,是分别是这二者ty

跟我学算法-图像识别之图像分类(下)(GoogleNet网络, ResNet残差网络, ResNext网络, CNN设计准则)

1.GoogleNet 网络: Inception V1 - Inception V2 - Inception V3 - Inception V4 1. Inception v1 split - merge - 1*1卷积,3*3卷积, 5*5卷积, 3*3池化 输入层:inception 1*1 卷积 1*1卷积 - 3*3卷积 1*1卷积 - 5*5卷积 3*3 maxpooling - 1*1 卷积 2个辅助分类器 深网络中,梯度回传到最初几层,存在严重消失问题 有效加速收敛 测试阶段不适