• 读书笔记6.21


    Linux 和 UNIX
    epoll,获取文件I/O事件通知的一种机制。
    inotify,监控文件和目录变化的一种机制。
    capabilities,为进程赋予超级用户的部分权限的一种机制。
    扩展属性。
    i-node标记。
    clone()系统调用。
    /proc文件系统。
    在文件I/O、信号、定时器、线程、共享库、进程间通信以及套接字方面,Linuxs所专有实现的细节。
     
    POSIX.1b实时性扩展包括文件同步、异步I/O、进程调度、高精度时钟和定时器、采用信号量、共享内存,以及消息队列的进程间通信。这3种进程间通信方法的称谓前通常冠以POSIX,以示其有别于与之类似而又为古老的System V信号、共享内存以及消息队列。
    POSIX.2这一与POSIX.1相关的标准,对shell和包括C编译器命令行接口在内的各种UNIX工具进行了标准化。
     
    内核的职责..
    内存管理。
    进程调度--
    Linux虚拟内存管理机制两方面优势:
    1进程与进程之间、进程与内核之间彼此隔离,因此一个进程无法读取或修改内核或其他进程内存内容。
    2、只需将进程的一部分保持在内存中,这不但降低了每个进程对内存的需求量,而且还能再RAM中同时加载更多的进程。这也大幅提升了如下事件的发生概率。在任一时刻,CPU读又知识一个进程可以执行,从而使得对CPU资源的利用更加充分。
    提供了文件系统。
    创建和终止进程。
    对设备的访问。
    联网。
    提供系统调用应用编程接口(API)。
    内核解决(多进程)访问硬件资源时可能引发的冲突,用户和进程对此则往往一无所知。
    内核态和用户态。执行硬件指令可使CPU在两种状态间来回切换。与之对应,可将虚拟内存区域划分(标记)为用户空间部分或内核空间部分。在用户态下运行时,CPU只能访问被标记为用户空间的内存,试图访问属于内核空间的内存会引发硬件异常。当运行于核心态时,CPU既能访问用户空间内存,也能访问内核空间内存。
    仅当处理器在和心态运行时,才能执行某些特定操作,这样的例子包括:执行宕机(halt)指令去关闭系统,访问内存管理硬件,以及设备I/O操作的初始化等。实现者们利用这一硬件设计,将操作系统至于内存空间,这确保了用户进程既不能访问内核指令和数据结构,也无法执行不利于系统运行的操作。
     
    shell 是一种具有特殊用途的程序,主要用于读取用户输入的指令,并执行相应的程序以相应命令。有时,人们也称之为命令解释器。
    术语登陆shell(login shell)是指用户刚登陆系统时,由系统创建,用以运行shell的进程。
    而对于UNIX系统而言,shell只是一个用户进程。shell的种类繁多,登入同一台计算机的不同用户同时可使用不同的shell。
    以下几种重要的shell:
    1、Bourne shell(sh)
    2、C shell
    3、Korn shell
    4、bash
     
    用户和组
    系统会对每个用户的身份做唯一标识,用户可隶属于多个组。
    用户。系统的每个用户都用有唯一的登录名(用户名)和与之相对的整数型用户ID(UID)。系统密码文件/etc/passwd 为每个用户都定义有一行记录,除了上述两项信息外,改记录还包括如下的信息。
    登陆shell:执行以解释用户命令的程序名称。
    该记录还能以加密形式保存用户密码。然而,处于安全考虑,用户密码往往存储于单独的shadow密码文件中,仅供特权用户阅读。
    组--每个用户组都对应这系统组文件/etc/gruop中的一行记录,该记录包含如下信息。
    组名:(唯一的)组名称。
    组ID(GID):与组相关的整数型ID。
    用户列表,隶属于改组的用户登陆名列表(通过密码文件记录的group ID 字段未能标识出的该组其他成员,也在此列),以逗号分隔。
    超级用户。
     
     
     
     
     
     
     
     
  • 相关阅读:
    Beginning SDL 2.0(5) 基于MFC和SDL的YuvPlayer
    Beginning SDL 2.0(6) 音频渲染及wav播放
    Beginning SDL 2.0(4) YUV加载及渲染
    Beginning SDL 2.0(3) SDL介绍及BMP渲染
    获取windows可执行文件的version信息(版本号)
    visual studio 2005提示脚本错误 /VC/VCWizards/2052/Common.js
    Beginning SDL 2.0(2) TwinklebearDev SDL 2.0 Tutorial
    Beginning SDL 2.0(1) SDL功能简介
    ffmpeg与H264编码指南
    2015-07学习总结——网络编程(TCP/IP)
  • 原文地址:https://www.cnblogs.com/loliconinvincible/p/13173992.html
Copyright © 2020-2023  润新知