zoukankan      html  css  js  c++  java
  • 《UNIX环境高级编程》学习心得 一

    本文内容大部分摘自《UNIX环境高级编程》,附有部分个人心得。


    1、unix体系结构

    从严格意义上来说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境。
    我们通常将这种软件称为内核(kernel),因为它相对较小,而且位于环境核心。如图显示unix体系结构。


    内核接口被称为系统调用(system call)。公用函数库构建在系统调用接口之上,应用程序既可食用公用函数库,也可以使用系统调用。
    shell是一个特殊的应用程序,为运行其他应用程序提供了一个接口。

    从广义上来讲,操作系统包括内核和其他软件。

    2、登陆

    用户在登陆unix系统时,要先键入登录名,然后键入登录口令。系统在其口令文件(通常是/etc/passwd文件)中查看登录名。
    口令文件中的登陆项是由七个以冒号为分隔的字段组成,依次是:登录名、加密口令、数字用户ID、数字组ID、注释字段、起始目录以及shell程序(我理解为系统调用的权限)

    root:*:0:0:System Administrator:/var/root:/bin/sh
    名 :密:户:组:            注              :    目    :   shell

    巧计:明迷糊租住木鞋

    3、文件和目录

        3.1 文件系统
        unix文件系统是目录和文件的一种层次结构(树形结构),所有东西的起点是根(root)目录,根目录的名称是“/”。
        3.2 文件名
        目录中的各个名字称为文件名(filename)。只有斜线(/)和空字符不能出现在文件名中。斜线用来分割路径,空格用来终止一个路径名。
        3.3 路径名
        由斜线分隔的一个或多个文件名组成的序列(可以以斜线开头)构成路径名(pathname),以斜线为开头的路径名为绝对路径(absolute pathname),否则称为相对路径名(relative pathname)。

    4、程序与进程

        4.1、程序:

        程序(program)是储存在磁盘上某个目录中可执行的文件。内核使用exec还书将程序读入内存,并执行程序。

        4.2、进程和进程ID

        程序执行实例被称为进程(process)。unix系统确保每个进程都有一个唯一的数字标识符,成为进程ID(process ID),进程ID总是一个非负整数。

            4.2.1、进程控制

            有三个用于控制进程的主要函数:fork、exec、waitpid。

        4.3、线程和线程ID

        线程(thread):资源执行的基本单位

        线程ID:唯一地标识了一个进程中的线程,它只在所属进程中有效,一个进程的线程ID到了另一个进程中毫无意义。

        注:线程可以共享同一地址空间、文件描述符、栈、进程相关的属性。

  • 相关阅读:
    Github简单使用
    软件架构
    软件架构
    软件架构
    VB.net 捕获项目全局异常
    C#里面的三种定时计时器:TIMER
    深入分析委托与事件
    C#预处理器指令
    C# 实现透明可移动窗体
    多元一次方程解法 C++
  • 原文地址:https://www.cnblogs.com/night163/p/4972884.html
Copyright © 2011-2022 走看看