《APUE》笔记--第一章
闲着没事就翻了翻《APUE》的第一章,随手记几个概念吧。
操作系统:可以将它定义为一款软件,通常将这款软件叫内核。
系统调用:内核的接口
公共函数库构建在系统调用的接口之上,应用程序既可以使用公用函数库,也可以使用系统调用。shell是一个特殊的应用程序,为其他应用程序提供了一个接口。
shell:
shell是一个命令解释器,它读取用户输入,然后执行命令,其输入一般来自终端,有时也来自文件。(shell脚本)
常见shell:
Bourne shell:由贝尔实验室开发 /bin/sh
Bourne-again shell 是GNU shell 所有Linux都提供这种shell /bin/bash
C shell : 伯克利大学BSD的shell /bin/csh
Korn shell : 同样由贝尔实验室开发 /bin/ksh
文件系统:
UNIX文件系统是目录和文件的一种层次结构,所有的东西的起点是称为根的目录,这个目录的名称是一个字符“ / "。
目录是一个包含目录项的文件。
目录中的各个名字称为文件名,只有斜线和空格不能出现在文件名中,因为斜线用来分隔目录名,空格用来结束文件名。
每次创建新目录的时候会自动创建两个文件名,为" . " 和 " .. " 这两个目录一般是隐形的可以用ls -a 来查看分别指向当前目录和上一级(父目录)。
路径名:绝对路径和相对路径(老生常谈,自行百度)。
工作目录:
每一个进程都是一个工作目录,有时称其为当前工作目录,可以用chdir函数更改。
输入输出(下来详细介绍)
程序:存储在硬盘上某个目录中的可执行文件。
进程:程序的执行实例被称之为进程。
进程的控制:fork(),exec(),waitpid() 函数可以控制进程
fork()函数可以创建一个进程