• linux内核学习(一步一步走)——内核概述


    一、用户空间与内核空间:

    用户通过用户空间与操作系统打交道,程序员开发或使用的应用程序位于用户空间。用户空间不能直接访问内核,从而不能访问硬件资源,但是可以通过内核定义的最外层例程——系统调用来访问。

    内核空间是硬件管理功能发挥作用的区域。

    二、用户标识符

    用户以唯一的帐号名登陆,还可以关联一个唯一的用户ID(UID).内核用这个UID验证用户的文件访问权限。

    用户也是一个或多个组的成员,每个组都有其唯一的组ID(GID)。

    三、文件类型

    1.普通文件(regular file)在模式字段的第一个字符用破折号表示(eg, -rw-rw-rw)。

    2.目录(directory)文件在模式字段的第一个字符用“d”表示(eg,drwx--),其中存放文件名和文件索引结点之间的关联关系。

    3.块设备(block device)文件在模式字段的第一个字符用“b”(eg,brw---)。表示硬件设备,其I/O是以2的幂次方数据块大小进行传送的.

    4.字符设备(character device)文件在模式字段的第一个字符用“c”表示(eg,crw--),表示硬件设备,数据不是以块组织的,I/O是以字节流发送的.

    5.链接(link)文件在模式字段的第一个字符用“l”表示(eg,lrw---),链接就是指向文件的指针.

    6.命名管道文件在模式字段的第一个字符用“p”表示(eg,prw--),它作为数据管道方便程序之间的通信

    7.套接字(socket)文件在模式字段的第一个字符用“s”表示(eg,srw--)

    四、文件模式

    1.sticky

    启用了sticky位的文件在mode字段的最后一个字符为“t”(eg,-rwx-----t)。可执行文件可以启用sticky位,以确保可以让它待在内存,而不管它的执行状态。当这应用到一个频繁使用的程序时,就会提高性能,因为减少了磁盘访问文件信息所花费的时间。

    2.suid

    如果设置了suid位,那么用户访问权位“x”变为“s”(eg,-rws---).当用户执行了一个可执行文件时,执行程序就会与调用这个文件的用户关联起来。

    3.sgid

    如果设置了sgid位,那么用户组访问权位上可执行位"x"变为“s”(eg,-rwxrws),类似suid,它用于组

  • 相关阅读:
    [iPad]PencilKit教程3、检查,修改和构造PencilKit绘图
    [iPad]PencilKit教程2、PencilKit的新功能
    [iPad]PencilKit教程1、PencilKit介绍
    为什么要谨慎使用Arrays.asList、ArrayList的subList?
    精通高并发与多线程,却不会用ThreadLocal?
    拥抱Kubernetes,再见了,SpringBoot @Scheduled
    从小公司进入大厂,我都做对了哪些事?
    总结我的Java朋友
    MySQL如何实时同步数据到ES?试试这款阿里开源的神器!
    基于Java访问数据库
  • 原文地址:https://www.cnblogs.com/boyiliushui/p/4808264.html
Copyright © 2020-2023  润新知