1.Linux是什么?
- UNIX设计理念:
- 所有的程序或系统装置都是文件。
- 不管构建编辑器还是附属文件,所写的程序只有一个目的,就是有效地完成目标
- 操作系统:应用程序->系统调用->内核->硬件。其中系统调用和内核就是操作系统主要的功能,而应用程序一般是根据操作系统给出的系统调用接口来设计。操作系统的内核必须要跟硬件配合,以提供及控制硬件的资源进行良好的工作
- 纯种的UNIX:目前被称为纯种的UNIX指的就是System V 以及BSD这两套。
- 编辑器和编译器是两种不同的概念
- GPL(GNU General Public License):自由软件的重点并不是指"免费",而是指具有"自由度(freedom)"的软件,史托曼进一步说明了自由度的意义是:用户可以自由运行、复制、再发型、学习、修改与强化自由软件
- 多任务和单任务:
- 多任务:一个CPU就会在不同的程序间切换。
- 单任务:一个CPU在一个时间内仅能进行一个程序。单任务和多任务的生成主要为:CPU芯片支持 + 操作系统的工作调度设计
- Linux主要参考标准的POSIX接口规范,因为POSIX标准主要是针对UNIX与一些软件运行时候的标准规范,只要依据这些标准规范来设计的内核与软件,理论上就可以执行UNIX的程序
- Linux开发的主要原因:
- 开源导致可移植性
- 虚拟团队的支持
- 模块化:Linux随时都有程序代码加入的状况,于是Linux便逐渐开发成具有模块的功能。即是将某些功能独立于内核外,在需要的时候才加载到内核中。
- Linux的精神:托瓦兹的Linux开发副手,以及资源传送修补程序的黑客志愿者,其实都没有见过面,而且彼此分布在地球的各个角落,大家群策群力共同开发出现今天的Linux-----虚拟团队。
- Linux的内核版本(栗子:2.6.18-92.e15):
- 2为主版本,其中主版本的数字又分:
- 主次版本为奇数:开发中版本(development)如2.5
- 主次版本为偶数:稳定版本(stable)如2.6
- 6为次版本
- 18为释出版本,释出版本则是在主次版本架构不变的情况下,新增的功能累积到一定的程度后所新释出得内核版本
- 92.e15为修订版本:有针对某个版本的内核修改过部分的程序代码,那么那个被修改过的新的内核版本就可以加上修改版本了。
- Linux distribution:
- 可完全安装的Linux发布套件
- Linux早起都是由黑客工程师所开发维护的,他们并没有考虑到一般用户的能力
- Kernel + Softwares + Tools的可完全安装的系统,我们称之为Linux distribution
- 针对于Linux distribution标准设定:
- Linux Standard Base(LSB)
- 目录架构File system Hierarchy Standard(FHS)
- 每个Linux distribution唯一的差别可能就是该开发者自家所开发出来的管理工具以及套件管理的模式。distribution主要分为RPM方式安装和debian的dpkg方式安装
- Linux in China:
- CLE套件对于很多进行了翻译和开发中文套件
- 关于授权:
- Open Source(开放源码)
- GNU General Public License
- Berkeley Software Distribution(BSD)
- Apache License Version 2.0:如果你修改过该软件,软件的名称依旧需要定名为Apache才行
- Close Source
- Freeware
- Shareware:带有试用期的软件
1.Linux是什么?的更多相关文章
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
- Linux 内核概述 - Linux Kernel
Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- NodeJs在Linux下使用的各种问题
环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...
- [linux]阿里云主机的免登陆安全SSH配置与思考
公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- SQL Server on Linux 理由浅析
SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...
- Microsoft Loves Linux
微软新任CEO纳德拉提出的“Microsoft Loves Linux”,并且微软宣布.NET框架的开源,近期Microsoft不但宣布了Linux平台的SQL Server,还宣布了Microsof ...
- Linux 江湖系列阶段性总结
引言 我使用 Linux 已经有很多年了,最开始接触 Linux 的时候是从 RedHat 9(没有 Enterprise),中途换过 N 个不同的发行版.多年前,我在 BlogJava 上面分享 J ...
随机推荐
- CSS后代选择器可能的错误认识
一.关于类选择器的一个问题 CSS代码: .red { color: red; } .green { color: green; } HTML代码: <div class="red&q ...
- Handlebars块级Helpers
1.Handlebars简单介绍: Handlebars是JavaScript一个语义模板库,通过对view和data的分离来快速构建Web模板.它采用"Logic-less templat ...
- win10取消vpn使用远程默认网关
打开%AppData%\Microsoft\Network\Connections\Pbk,找到rasphone.pbk文件(当你新建拨号连接或者VPN连接之后会在这个目录创建一个.pbk的文件,这个 ...
- 基于Netty4的HttpServer和HttpClient的简单实现
Netty的主页:http://netty.io/index.html 使用的Netty的版本:netty-4.0.23.Final.tar.bz2 ‐ 15-Aug-2014 (Stable, Re ...
- hadoop入门(2)——HDFS2.0应用场景、原理、基本架构及使用方法
一.HDFS概述 优点:高容错性.适合批处理.适合大数据处理.流式文件访问:一次写入,多次读取. 缺点:不适合低延迟数据访问.不适合小文件存取(受限于NameNode) ...
- .NET开发者如何愉快的进行微信公众号开发
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:这篇文章只是一个如何提高开发效率的简单指导和记录,不会涉及具体的微信公众号开发内容. ...
- 【MongoDB】4.MongoDB 原子修改器的 极速修改
文档转自:http://blog.csdn.net/mcpang/article/details/7752736 对于文档的更新除替换外,针对某个或多个文档只需要部分更新可使用原子的更新修改器,能够高 ...
- TextSwitcher 简单用例
TextSwitcher 字面理解是文字交换器,是ViewSwitcher的子类,从ViewSwitcher来看,是View交换器,TextSwitcher继承自ViewSwitcher,显然是交换T ...
- 分布式缓存技术memcached学习(五)—— memcached java客户端的使用
Memcached的客户端简介 我们已经知道,memcached是一套分布式的缓存系统,memcached的服务端只是缓存数据的地方,并不能实现分布式,而memcached的客户端才是实现分布式的地方 ...
- Subsonic的使用之基本语法、操作(2)
查询 SubSonic2.1版本 – 例出3种查询. Product product = new Select().From<Product>() .Where(Product.Produ ...