Linux 小知识翻译 - 「内核(kernel)」
上次介绍了Linus Torvalds, 这次介绍他开发的「内核」。
经常听人提到「Linux kernel」,但如果被问到「kernel究竟是什么?」的话,会出乎意料的觉得难以回答。
那么,kernel到底是什么呢?「kernel」翻译过来就是「核心」的意思,简单来说,「Linux的核心程序就是Linux kernel」。
其实严格来说,「Linux」就是指「Linux kernel」。(最近,「Linux发行版」简称为「Linux」的情况越来越多)
将Linux kernel解释成「系统核心的程序」似乎看不出任何要点。具体来说kernel是干什么的呢?
kernel其实就是管理硬件的运行,再具体点就是管理内存,管理文件,管理设备驱动,管理进程等等。
举例来说,kernel相当于「从用户处接收指示后,控制硬件来完成用户指示的“头脑”」。
虽说,OS中最重要最重要的就是内核,但是光有内核OS是无法运行的。人体也一样,只有脑袋是动不了的。
其他必要的东西之一就是「接口」。「接口」承担的就是中介的工作,相当于人体中的神经。
「用户接口」就是指「连接用户和内核之间的中介程序」。通过用户接口,可以将用户的指示传达到内核,再将内核的处理接口反馈给用户。
所谓Linux发行版,就是将Linux内核,用户接口等各式各样的程序打包在一起,作为OS让用户能够立即使用的东西。
初学者基本上都是通过Linux发行版来使用Linux的。
只有内核的OS是无法运行的。当然,虽说自己在内核中导入其他应用程序的话,也是可以使用的,但是最好还是认为「单独使用内核」是不可能的。
Linux 小知识翻译 - 「内核(kernel)」的更多相关文章
- Linux 小知识翻译 - 「环境变量」
这次,谈谈关于「环境变量」的话题. 所谓变量,就是在程序中设置的,相当于在内存中准备的「一个用来存放数据的小箱子」. 即,程序通过变量来保存值,通过变量保存的内容来进行各式各样的计算处理. 「环境变量 ...
- Linux 小知识翻译 - 「Shell 脚本」
这次说说「Shell 脚本」. 根据上回的介绍,Shell就是「作为联系Linux和用户的接口而存在的软件」.在Linux环境中,通过Shell来操作系统很普遍. 这里,考虑到有时候可能想要「多次的进 ...
- Linux 小知识翻译 - 「桌面环境」
这次聊聊桌面环境. 上次聊了 X Window System 相关的内容,虽然令人意外,但X Window System 和桌面环境不是一回事.请大家稍微考虑一下. X Window System 是 ...
- Linux 小知识翻译 - 「架构 续」(arch)
上次,从「计算机的内部构造」的角度解释了架构这个术语.这次,介绍下架构中经常提到的「i386架构」及之后的「i486」,「i586」. 安装Linux的时候,很多人即使不了解但也会经常听到i386架构 ...
- Linux 小知识翻译 - 「端口限制」
上次说了端口号相关的内容,这次聊聊「端口限制」的事. 经常看到关于安全的书籍上会说「不要开放多余的端口」,那么,如何限制端口才好呢? 实际,端口限制的方法大体上分的话有2种. 其一,「通过应用程序来处 ...
- Linux 小知识翻译 - 「路径设置」
这次聊聊路径的使用,这里的路径是「命令搜索路径」的简称. 在Linux上执行命令的时候,本来是需要命令的所在位置的绝对路径的,就像「/usr/bin/passwd」这样. 但是,对于经常使用的命令,如 ...
- Linux 小知识翻译 - 「动态DNS」(DDNS)
这次聊聊「动态DNS」. DNS上周已经介绍过了,就是提供主机名和IP地址对应关系的结构.「动态DNS」是对主机名和IP地址的对应关系提供动态管理的结构. 以前的DNS没有考虑IP地址变化的情况.但是 ...
- Linux 小知识翻译 - 「DNS服务器」
这次聊聊「DNS服务器」. DNS(Domain Name System)服务器,也被称为域名服务器. 因为使用互联网的时候,必须要指定DNS服务器,所以你一定听过DNS这个名字吧. 那么,这个DNS ...
- Linux 小知识翻译 - 「邮件服务器」
这次聊聊「邮件服务器」. 邮件服务器上通常会运行2个服务端软件,「SMTP服务器」和「POP服务器或者IMAP服务器」. 这2个东西,也许使用邮件客户端的人立马就明白了.因为设置邮件客户端的时候,需要 ...
随机推荐
- NGINX 加载动态模块(NGINX 1.9.11开始增加加载动态模块支持)
NGINX 1.9.11开始增加加载动态模块支持,从此不再需要替换nginx文件即可增加第三方扩展.目前官方只有几个模块支持动态加载,第三方模块需要升级支持才可编译成模块. tinywan@tinyw ...
- NIO Channel和Buffer
Java NIO 由以下几个核心部分组成: Buffer Channel Selector 传统的IO操作面向数据流,意味着每次从流中读一个或多个字节,直至完成,数据没有被缓存在任何地方.NIO操作面 ...
- Go命令行参数解析flag包
go语言提供的flag包可以解析命令行的参数,代码: package main import ( "flag" "fmt" ) func main() { // ...
- 微信支付的JAVA SDK存在漏洞,可导致商家服务器被入侵(绕过支付)XML外部实体注入防护
XML外部实体注入 例: InputStream is = Test01.class.getClassLoader().getResourceAsStream("evil.xml" ...
- spring cloud config服务器
Spring Cloud Config提供了一种在分布式系统中外部化配置服务器和客户端的支持.配置服务器有一个中心位置,管理所有环境下的应用的外部属性.客户端和服务器映射到相同Spring Event ...
- WebForm 小项目【人员管理系统】分析
简单的人员管理系统 展示页面 添加人员 --判断添加人员的各种条件限制 -- 各种提示 修改人员信息 -- 人员原来信息绑定 --密码不显示,密码不改时用原来密码 人员删除 using System; ...
- CLR,GC 表示什么意思?
CLR常用简写词语,CLR是公共语言运行库(Common Language Runtime)和Java虚拟机一样也是一个运行时环境,它负责资源管理(内存分配和垃圾收集等),并保证应用和底层操作系统之间 ...
- [PHP] 数据结构-反转链表PHP实现
1.常见方法分为迭代和递归,迭代是从头到尾,递归是从尾到头2.设置两个指针,old和new,每一项添加在new的后面,新链表头指针指向新的链表头3.old->next不能直接指向new,而是应该 ...
- centos7使用yum安装mysql 【转】
转自:http://blog.csdn.net/eclothy/article/details/52733891 使用: yum install mariadb* (注意,带星号) 安装好后,启 ...
- Tomcat报failed to parse the expression [${xxx}]异常(javax.el.ELException)的解决方法
Tomcat 7 'javax.el.ELException' 的解决方式tomcat 7对EL表达式的语法要求比较严格,例如"${owner.new}"因包含关键字new就会导致 ...