首页 > 代码库 > 计算机基础名词(二)
计算机基础名词(二)
北桥:高速总线
南桥:低速总线
进程:程序运行的实例,副本
进程上下文切换:cpu分配给程序运行的时间是分片的。如果当程序运行了第二条指令后cpu时间已经耗完,此时需要进行进程切换。而切换前必须保存当前进程的所有状态,称为保护现场。而当再次轮到该程序运行时需要切换至cpu上,并且恢复为原来的状态,称为恢复现场。
内核负责完成进程切换,因此占据CPU的资源和内存资源。但是此过程中并无生产力。因此,如果进程切换过于频繁,则效率低下。
GCC:GNU C Complier。过程:预处理-->编译-->汇编-->链接
IO控制器,适配器:集成于内部为控制器,外置则为适配器。其中有键盘IO控制器,硬盘IO控制器等,其作用将CPU发出的指令到硬件中执行,将电气特性转换为数字特性的工具。
进程由父进程fork自身而来。如在shell下执行ls,则ls的父进程为shell
父进程先向内核申请,启动一个结构。子进程启动后并无自己的内存,而是指向了父进程的内存空间来装载自己的程序。
最佳占比:用户空间/内核空间 = 7/3
Linux:全称GNU/Linux
GPL:General Public License。GPL协定过于苛刻,因此后来出现其他开源协定如BSD协定,Apache协定等。它们都比GPL松散,哪怕自己修改程序或者项目的10%也能认为自主开发。
LGPL:更加宽松和简单的GPL,可以以库调用的方式调用别人的库以供自己做商业用途。
开源并不是免费,别人依旧拥有版权,因此不能侵犯别人的版权。
版权:copyright。 开源版权:copyleft
三大Linux发行版:redhat,suse,debian
内核功能:文件系统,网络协议栈,进程管理,加密/解密,驱动程序(内核和硬件之前的桥梁)
地址空间:ROM+RAM
ROM:加电自检,cpu寻址地址空间的组成部分。
库:二次封装的系统调用,也可能仅仅为一些简单功能的封装。
POSIX规范:可移植操作系统。目的是移植应用程序。Linux遵循posix规范,遵循标准的API。
应用程序运行需要ABI。
init:操作系统(指Linux)的第一个进程,专门负责生成其他进程,为所有进程的父进程,用户空间启动的第一个进程,为内核的使者。
rc版:发行候选release candidate
内核版本:主线版mainline,稳定版stable,长期维护版longterm
内核版本号:主版本号(引入新机制).次版本号(重大改变).修正号(发行号,如修复漏洞)
Linux终端:
串行终端:/dev/ttyS#
物理终端:系统初始化时终端/dev/console
虚拟终端:附加在物理终端上,能够切换的终端。此时系统已经启动完毕,如tty1~tty6
伪终端:也叫模拟终端,为远程连接终端或gnome界面选择的terminal。如pts/#
Linux哲学思想:
一切皆文件
由众多目的单一的应用程序完成复杂任务,一个程序只做好一件事
尽量避免跟用户交互
使用文本文件保存配置信息
提供机制,而非策略
自由软件的含义:
自由使用
自由学习和修改
自由创建衍生版
目录不是文件夹,而是索引
本文出自 “嘟教授” 博客,请务必保留此出处http://jaywin.blog.51cto.com/10784772/1891617
计算机基础名词(二)