计算机基础知识2

程序运行的模式;

Linux系统将自身划分为两部分,一部分为核心软件,即是kernel,也称作内核空间,另一部分为普通应用程序,这部分称为用户空间。

用户空间中的代码运行在较低的特权级别上,只能看到允许它们使用的部分系统资源,并且不能使用某些特定的系统功能,也不能直接访问内核空间和硬件设备,以及其它一些具体的使用限制。

用户空间:user space,us    内核空间:system  space

POS :Portable Operating System   可移植操作系统规范

POSIX

API;编程接口

运行程序格式;

window;EXE,dll (dynamic library)动态链接库

Linux:ELF, so(shared object)共享对象

一般而言程序分两部分组成

程序;指令+数据

指令;只读

能在CPU上运行的指令,CPU上有哪些是既定的,不可能发生改变也不可能去修改它,所以通常是只读的

数据;读写

数据是指令加工的对象,所以通常是读写的,既能读又能修改

程序;算法加数据结构,程序员写程序无非是调用CPU指令其中的某些命令,对它期望加工的数据进行加工,这些数据就存放在内存中。

库调用,系统调用;允许被调用的程序

malloc(), free()

编程语言;汇编语言、微码编程

系统中某些于硬件相关的特有代码、驱动程序开发。

高级语言c c++ 使用面窄

主要写系统级应用、驱动程序

高级应用java、python php

应用程序  使用面广

unix-like

Linux的发行版;

slackware

二次发行版 suse

opensuse

debian:

二次发行版 ubuntu

三次发行版 mint

redhat:红帽

rhel:redhat enterprise linux 企业版 每18个月发型一个新版本,

CentOS;把rhel发行出来的各种版本用完全兼容rhel的格式重新编译一次在互联网上开放免费提供

fedora;每6个月发行一个新版本  个人版

ArchLinux

Gentoo

Android; kernel(内核)  +busybox +java虚拟机来实现的

Apache;apache

BSD;bsd

GNU;GPLv2版本 ,GPLv3版本,流毒无穷的概念

GPL流毒无穷的协定

LGPL(lesser)宽松的

例如:

A:   1000, GPL

B:   20000,  20

A程序写了1000行代码,遵循GPL协定的,又有了B程序,因为A程序是

自由获取的,B程序参考了A,B程序自己有20000行代码,其中它借用

A的20行,这只是千分之以,但只要跟A沾上边儿,B就必须把剩余所

有的代码遵循GPL协定

20000行代码  只借用了20行 剩下的19980都开源了

Apache;apache

BSD;bsd

centos和linux的关系

centos是基础linux建立的操作系统

linux属于内核系统,只有终端命令界面,无图形界面

centos同时拥有终端命令界面和图形界面

linux和centos都是属于开源系统

CentOS和RHEL的关系

RHEL发行时有两种方式,二进制和源代码的发行方式。可以网上下载免费获得,如果使用了在线升级包括补丁咨询服务就要付费。

RHEL一直提供源代码的发行方式,CentOS就是将RHEL发行的源代码重新编译一次,形成一个可使用的二进制版本。由于LINUX的源代码是GNU,所以从获得RUEL的源代码到编译成新的二进制,都是合法。知识REDHAT是商标。所以在新的发行版里将REDHAT的商标去掉。

GPL (General Public License)是一份GNU通用公共授权非正式的中文翻译。它并非自由软件基金会所代表亦非使用GNU通用公共授权的软件的法定发布条款,只有GUN通用公共授权英文原文的攀奔始具有此等效力。

LGPL,GUN宽通用公共许可证

GNU,GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27公开发起的。它的目标是创建一套完全自由的操作系统。GNU通用公共许可证。即反版权概念

Apache,是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。

BSD (Berkeley Software Distribution,伯克利软件套件) 是Unix的衍生系统,今天BSD并不特指任何一个BSD衍生版本,而是类UNIX操作系统中的一个分支的总称

程序包管理器

RPM;RPM Package Manager,这一文件格式名次虽然打上了Redhat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、RHEL,Fedora,S,u,S,e,以及Turbo Linux CentOS 等都有采用,可以算是公认的行业标准了

dpt;

Debian,Ubuntu

自由软件;

自由使用;自由学习和修改,自由分发,自由创建衍生版,

Linux的哲学思想

1、一切皆文件,把几乎所有资源,包括硬件设备都祖师为文件格式,

2、由众多单一母的小程序组成;一个程序只实现一个功能,而且要做好,组合小程序完成复杂人物

3、尽量避免跟用户交互,目标;实现脚本编程,以自动完成某些功能

4、使用纯文本文件保存配置信息;目标;一款使用的文本编辑器既能完成系统配置工作

如何获取CentOS的发行版;

http://mirrors.aliyun.com

http://mirrors.souhu.com

http://mirrors.163.com

终端;用户与主机交互,必然用到的设备;

物理终端;直接接入本机的显示器和键盘设备;/dev/console (控制台)

虚拟终端;附加在物理终端之上的以软件方式虚拟实现的终端,CentOS 6 默认启动6个虚拟终端

Ctrl+Alt+F1-F6切换

图形终端;附加在物理终端之上的以软件方式虚拟现实的终端,但额外会提供桌面环境,图形终端也是虚拟终端的一种

设备文件的路径;/dev/tty# (0-...)

模拟终端;图形界面下打开的命令行接口。基于ssh协议或telnet协议的等远程打开的界面

设备文件的路径;/dev/pts/# (0到无穷大)

查看自己当前的终端设备命令;#tty

交互式接口;启动终端后,在终端设备附加一个交互式应用程序有两类;

GUI;图像应用界面  窗口管理器来进行管理

X protocol,window,manager,desktop X协议

Desktop;

GNOME 桌面系统 (C语言研发 图形开发库gtk)

ked 桌面系统 (C++研发 qt)

XFCE 嵌入式 (轻量级桌面环境)

CLI:文本界面

shell程序:shell本身的意思就是(外壳,整个系统的外壳)

sh (bourn)

csh  接近C语言风格的csh 像而已,差别还是很大的

tcsh  csh的升级版

ksh  (korn)商业产品 功能强大 想用得买

bash (bourn again shell) 遵循GPL协定的(集csh、ksh两者的有点) 最为流行的开源sh

zsh  功能强大

看自己喜欢、众多版本默认的还是bash,

显示当前使用的shell的命令 #echo $SHELL

显示当前系统使用的所有shell的命令, #cat /etc/shells

命令提示符(prompt)仅指#号而已

{[email protected] ~}:$PS1       环境变量来进行定义

echo   $PS1     [\[email protected]\h \W]\$    遵循这种格式来使用

prompt;其实有两种 Linux用户有两类

如果用管理员登录则显示:#

如果用普通用户则显示:$

命令;

输入命令,(Ebter)回车

告诉或提请shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来。表现为一个或多个进程;运行中的程序称之为(进程)

在shell中可执行的命令有两类;

内建命令;由shell自带的,而且通过某命令形式提供;

外部命令;在当前系统的某文件系统路径下有对应的可执行程序文件

which,whereis, 外部命令查看文件在哪

使用格式就是which或whereis后面跟上命令的名字就可以了

区别内部或外部命令:

#type (COMMAND)命令   例如;#type cd

注意!严格区分大小写

运行命令: 在命令提示符下键入命令就可以了,而命令键入格式通常如下;

COMMAND  [OPTIONS...]  [ARGUMENTS...]

命令     选项        参数

最左侧的必须是一个命令,否则报错

右侧跟上可以是选项,选项可以有多个,加中括号的意思是有些命令是不用的,这个选项是可选的,

再往后就是参数。

选项;用于启用或关闭命令的某个或某些功能;

短选项;-c  例如: -l  -h

短选项一般一个横线加上单个字符

大多数情况下多个短选项可以命令使用,例如-l,h, 可写作-lh;可合并,不合并使用中间必须使用空白字符隔开

长选项; --word,例如;--long --human-readable

长选项一般不能合并

长选项一般是用两个横线来引导

参数;命令的作用对象, 生效对象   例如,ls /etc  和ls /var

说白了参数是向命令提供数据;注意!数据不是数字。字符串其实也是数据

参数有时候也可以多个,多个参数之间也需要空白字符进行分隔

再次强调,命令本身一定要卸载左侧,而且命令本身是一个可执行的二进制程序,或者是shell自带的内建的命令。

注意;

1、多选项之间,以及多参数之间和命令之间都应该使用空白字符分隔,空白字符可以是一个空白,也可以是两个空白;

2、取消命令执行;Ctrl+c

文件系统;

C:\Program   files\office11\word\word.exe 其实这就是个路径

/etc/sysconfig/network-scripts/ifcfg-eth0     文件路径

目录最后的才叫做文件(eth0)

对Linux而言所有起始范围就叫做根,这是绝对顶级范围,因为对Linux而言所有文件上能访问,必须从这个位置开始,这叫做跟文件系统。

目录只是一个路径映射方式而已

文件有两类数据;文件访问过程是有路径的

元数据;metadata

数据;data

Linux的文件系统

1、文件名严格区分字符大小写;例如;file1,File1,FILE1是不同的文件;

2、文件名可使用除/意外的任意字符,不建议使用特殊字符;

(/)字符有两种意义,第一(/)它是根目录,第二(/它是路径分隔符)

3、文件名长度最长不能超过255个字符;

4、所有.开头的文件,均为隐藏文件;

路径有两种;

1、绝对路径;从最顶级的开始、从根目录起始的路径;

2、相对路径;对当前位置起始的路径;

比如C盘ABC文件夹有个1文件,还有一个DEF文件夹,而DEF文件下有个2文件.

那1和2的文件路径分别为:(都是绝对路径)

C:\ABC\1

C:\ABC\DEF\2

如果让1文件来表示2文件的路径

绝对路径: C:\ABC\DEF\2

相对路径: DEF\2 (因为1和2文件前面的C:\ABC这段路径相同就不用写出来了)

C:/website/img/photo.jpg 我们就知道photo.jpg文件是在c盘的website目录下的img子目录中。这样完整的描述文件位置的路径就是绝对路径。我们不需要知道其它任何信息就可以根据绝对路径判断出文件的位置。

相对路径就是自己相对与目标位置。不论将这些文件放到哪里,只要它们的相对关系没有变就不会出错。

..:表示当前目录的上一级目录

当前目录;current directory,也称作working directory;

pwd:printing working directory

能简写就一定不全写

LSB:Linux Standard Base 标准库

这些路径的定义其实都是LSB有规定的

命令终结:

ls:显示目标列表,在Linux中是使用效率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。

cd:切换工作目录至dirname。其中dirName表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory(也就是刚login时的目录)。另外~也表示为home directory的意思,

.则是表示目前所在的目录,

type:显示指定命令的类型,判断给出的指令是内部指令还是外部指令

tty:打印与标准输入连接的终端设备的文件名称

cat:连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于type命令

which:用于查找并显示给定的绝对路径,环境变量PATH中保存了查找命令时需要便利的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否村长,以及执行的到底是哪一个位置的命令

whereis:定位指令的we禁止程序、源代码文件和man手册页等相关文件的路径。

pwd:以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标志输出。全部目录使用/分隔。第一个/表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知目前所在的工作目录的绝对路径名称。

echo:用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用,在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上的显示一段文字,一般起到一个提示的作用。

命令:

1、文件系统相关;

目录管理

文件管理

文件查看

文件编辑

2、系统管理相关;

Linux命令帮助的获取

外部命令;其实所有外部命令都有一个可执行程序,位于文件系统某目录下;用which,whereis来获取

shell程序搜寻可执行程序文件的路径定义在PATH环境变量中;

#echo $PATH  注意!自左至右,至关重要,是有次序的

它第一次一旦找到了,如果一个命令在多个路径下都有执行程序文件,先后次序是很关键的,这就是搜寻路径的概念

格式;COMMAND [OPTIONS...] [ARGUMENTS...]

命令    选项     参数

内部命令获取帮助;shell程序自己直接附带的一些基本管理累工具

#help  COMMAND  例如;help cd   help help

外部命令获取帮助;有独立的外部可执行程序文件的命令

1、# COMMAND --help    #COMMAND -h

2、使用手册(manual)  #man COMMAND

3、信息页 #info COMMAND

4、程序自身的帮助文档 README  INSTALL  Changelog

5、程序官方文档, 官方站点;Documentation

6、发行版的官方文档

7、Google

内建命令帮助;

#help COMMAND

hash命令:

shell搜寻到的外部命令的路径结果会缓存至kv(key-value)存储中;

history命令;管理命令历史

其实linux的命令历史,在登录进系统以后,所执行所有的新命令。都会放置在内存的缓冲当中,但是一旦推出这个登录,这些命令会被记录在历史文件中,命令历史都有编号。

命令历史有两处;

登录shell时,会读取命令历史文件中记录下的命令;cat.bash_history这个历史文件就在用户的家目录下

登录进shell后新执行的命令智慧记录在缓存中;这些命令会用户退出时“追加至命令历史文件中”

history;

-a;追加本次会话新执行的命令历史列表至历史文件中;

-d;删除历史中指定的命令;

-c;清空命令历史;

8

快捷操作;                                         1

!#;可调用历史中第#条命令;                             6

!string;调用历史中最近一个以string开头的命令; 例如;!1 从下至上看  5

!!;上一条命令;                                      8

外部命令帮助获取;

每个程序员通常在开发主要的工作有两部分, 1、写程序,2、写程序帮助

man COMMAND

手册页;ls /usr/share/man1  cd ../man2

man1...man8 叫第一章节

man1;用户命令   man ls

man2;系统调用

man3;C库调用

man4;设备文件及特殊文件

man5;配置文件格式

man6;游戏相关

man7;杂项

man8;管理类的命令  对磁盘分区格式化的都是管理累命令

注意;有些关键字在不止一个章节中存在帮助手册;

要查看指定章节中的手册;man # COMMAND(命令)

man命令的配置文件;/etc/man.config

MANPATH /PATH/TO/SOMEWHERE:指明新的手册文件搜索位置

#man -M /PATH/TO/SOMEWHERE COMMAND:到指定位置下

搜索COMMAND名的手册页并显示之:

帮助手册中的段落说明

NAME

SYNOPSIS

DESCRIPTION

OPTIONS

EXAMPLES

AUTHOR

REPORTING BUGS

SEE ALSO

man less

SYNOPSIS 中这些符号的意义;

{};可选内容

<> : 必选内容

a|b : 二选以

...:同一内容可出现多次

man命令的操作手法

空格键(space),^,^f,^F,:向文件尾部翻屏  ^(Ctrl)

b,^B:向文件首部翻屏

d,^D:向文件尾部翻半屏

u,^U:向文件首部翻半屏

RETURN:^N e ^E or ^j :向文件尾部翻一行

y or ^Y or ^P or K or ^K :向文件首部翻一行

q :推出

#:跳转至第#行;

1G:回到文件首部

G:翻至文件首部

时间: 2024-12-27 21:56:32

计算机基础知识2的相关文章

如何成为一名黑客(网络安全从业者)——计算机基础知识篇

大家好,我是Mr.Quark,大家可以叫我夸克,欢迎大家在微信公众号(Quark网络安全)上给我留言,如果有时间我一定会一一回复大家的.今天我将和大家一起学习"如何成为一名黑客"或者说"如何成为一名网络安全专家". 在进入正题之前,我们先来给黑客下一个定义,毕竟如果连黑客的含义都不了解,成为黑客更是无从谈起. "黑客"称呼的变迁 在很久很久以前(别问我有多久,不要在意这些细节),"黑客"指的是喜爱钻研技术.精通计算机技术的程序

计算机基础知识学习

第一周学习 一.知识方面,总得来说,就是学习计算机基础知识. 1.从计算机的发展,应用,组成,网络等方面了解: 2.对计算机操作系统的学习:常用的操作系统,操作系统的功能.分类: 3.办公软件的学习:Word\Excel\ppt,像Word中编号格式.自动生成目录,Excel中条件格式的应用,图表插入,以及各种基础函数的使用: =SUM(Eoo*$E$3,Foo*$F$3,Goo*$G$3)  表示:用E\F\G列的各数与E3\F3\G3相乘后求和,count(if)\a 计数函数, =COUN

平面设计 计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

计算机基础知识及UNIX发展史

Technorati Tags: UNIX发展史,存储知识,ABI,API,开源协议 TOC[-] 1.计算机系统组成机构 2.冯诺依曼体系结构 3.服务器硬件简介 4.存储容量换算 5.存储基础知识 6.操作系统 7.开发相关概念 8.UNIX发展史 9.开源协议 10.Linux哲学思想 计算机基础知识及UNIX发展史 1.计算机系统组成机构 计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成,如下图所示: 2.冯诺依曼体系结构 1946年数学家冯·诺依曼于提

计算机基础知识对编程的重要性

码农和架构师的差别在哪里 从题目看文章,大家的第一想法是本篇文章是一篇讲述计算机基础知识和编程之间的关系,但是为什么开篇是这样的呢?当然这样的开篇并没有多大的意义,唯一的目的就是吸引读者而已. 纵观计算机专业的学生在毕业之后大多数会走向编写程序的道路,当然也会有部分同学有自己更感兴趣的事情,从而在毕业之后选择其他的职业.在这里根据我个人在毕业之后的编写程序的道路,写下一点总结,希望能和大家交流,有什么不对的地方,希望大家能给我指正,因为我个人觉得"三人行必有我师"是一句很有道理的话,每

学习编程语言应该掌握哪些计算机基础知识?

随着软件开发技术的不断发展,编程语言的使用也越来越方便,总的来说编程语言并不难学,即使没有任何计算机基础,也可以通过一个系统的学习过程来掌握编程语言. 目前经常使用的编程语言有几十种,包括Java.C.Python.C++.PHP.C#.JavaScript.R.Scala等,这些编程语言往往都有自己特定的使用场景,在难易程度上也有一定的区别.通常情况下,Java可以用于Web开发.大数据开发.Android开发等,C语言可以用于操作系统开发.嵌入式开发等,Python可以用于Web开发.大数据

第一章 计算机基础知识

第一章 计算机基础知识 第一部分 概述 1.1946年2月15日,第一台计算机 ENIAC 2.物理原件(电子原件) 第一代:电子管.第二代:晶体管.第三代:中小规模集成电路.第四代:超大规模集成电路.第五代:超导材料.第六代:人工智能.#考试考到第四代. 3.计算机的分类 巨型机,大型机,中型机,小型机,微型机 现在的巨型机也是存在的 4.微处理器(CPU.中央处理器)由控制器.寄存器.运算器组成 第二部分 微机系统的组成 CPU>内存>外存 #速度 CPU和内存之间有一个CACHE,叫做高

【核心整理】那些让你起飞的计算机基础知识:学什么,怎么学?

我之前里的文章,写的大部分都是与计算机基础知识相关的,这些基础知识,就像我们的内功,如果在未来想要走的更远,这些内功是必须要修炼的.框架千变万化,而这些通用的底层知识,却是几乎不变的,了解了这些知识,可以帮助我们更快着学习一门知识,更加懂得计算机的运行机制.当然,在面试中也经常会被问到,特别是对于应届生,对于春秋招,也可以看看我前阵子写过的文章历经两个月,我的秋招之路结束了!.也有读者经常问的计算机基础知识究竟是指啥?学习顺序?推荐书籍? 我公众号的读者学生以及非科班的应该挺多的,所以我今天这篇

01.04_计算机基础知识(键盘功能键和快捷键)

* A:键盘功能键 * a:Tab * b:Shift * c:Ctrl * d:Alt * e:空格 * f:Enter * g:Window * h:上下左右键 * i:PrtSc(PrintScreen)屏幕截图* B:键盘快捷键 * a:Ctrl+A 全选 * b:Ctrl+C 复制 * c:Ctrl+V 粘贴 * d:Ctrl+X 剪切 * e:Ctrl+Z 撤销 * f:Ctrl+S 保存 ###01.05_计算机基础知识(如何打开DOS控制台)* A:xp下如何打开DOS控制台?