-
系统与进程——操作系统概念和进程概念
目录 冯诺依漫体系结构 操作系统概念 (1)操作系统概念 (2)操作系统用途 (3)操作系统功能实现原理 (4)操作系统组织结构图 (5)系统调用&库函数 进程概念 (1)程序与进程的概念 (2)操作系统如何管理进程 (3)描述(PCB) (4)组织 (5)创建子进程 (6)僵尸进程&僵尸状态(Z) (7)孤儿进程 (8)环境变量 (9)进程虚拟地址空间 (10)进程优先级问题 冯诺依漫体系结构 (1)冯诺依曼结构体系由输入设备、输出设备、控制器、存储器、运算器组成 (2)中央处理器功能:算数运算与逻辑运算 (3)存储器:将数据进行短期存储,等同于内存 所有数据都是采用2进制进行存储的(电流的高低电平模拟二进制数据) 运算产生的数据都存储在内存当中 操作系统概念 (1)操作系统概念 操作系统 = 操作系统内核 + 应用集合 操作系统:计算机系统的一个基本程序集合,成为操作系统(os) 操作系统内核:代码程序,用于对计算机的进程、文件、驱动、内存等进行管理 应用集合:依附操作系统内核实现具体功能的程序 (2)操作系统用途 操作系统用于管理计算机的软硬件资源 软件资源:进程资源、驱动资源 硬件资源:CPU、内存、硬盘、 (3)操作系统功能实现原理 操作系统通过管理实现上述功能 管理 = 描述(结构体)+ 组织(串联结构体) (4)操作系统组织结构图 (5)系统调用&库函数 系统函数:操作系统提供的函数,被称之为系统调用函数 使用时参数多,难度大,不适合新手 库函数:C标准库提供的函数,被称之为库函数。库函数的代码实现当中调用了系统调用函数 使用时参数少,难度低,适合新手(例如C语言中的printf) 进程概念 (1)程序与进程的概念 程序:源代码经过编译产生的可执行文件,这个文件是静态的 进程:程序运行起来的实例,是动态运行的 (2)操作系统如何管理进程 进程的管理 = 描……
SE_Yang 2024-10-1613 0 0 -
初识Linux——目录结构与基本指令
本文主要介绍Linux操作系统的目录结构及其每个文件的用途,Linux操作系统中查询切换操作、文件类操作、用户与权限操作的相关指令。 Linux操作系统目录结构 在Linux操作系统中,所有的文件和目录均被放置在一个以“ / ”作为根节点开始的倒置树状结构中,“ / ”也称为根目录。 上图中各个目录文件用途如下: /bin: bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 /dev : dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 /etc: etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 /home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 /root: 该目录为系统管理员,也称作超级权限者的用户主目录。 /run: 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 /sbin: s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 /tmp: tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 /usr: usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 /var: var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 Li……
SE_Yang 2024-10-1521 0 0 -
Linux工具——实用工具介绍与使用说明
本文主要介绍Linux中关于安装器、编辑器、编译器、调试器、自动化构建项目、版本管理器等实用工具的功能介绍与使用说明。 目录 包安装器:yum yum的常规操作 文件传输工具:lrzsz & xftp 编译器:vim 三种常见模式 正常模式下7种快捷操作方式 安装vimforcpp 其他 编译器:gcc/g++ 区别 编译的四个过程 静态编译与动态编译 调试器:gdb 程序发行版本 调试基础方式 三种使用场景 自动化构建项目:make&makefile 介绍说明: makefile文件格式: make的工作方式(针对makefile文件): 伪目标定义: 版本管理工具:git 包安装器:yum 用于安装和移除软件 yum的常规操作 (1)查询软件信息 yum list 软件目录查询 yum list | grep "xxx" 通过管道grep过滤查询xxx (2)安装软件 yum list [软件名] 安装软件 yum list -y [软件名] 安装软件(免询问) (3)移除软件 yum remove [软件名] 移除软件 yum remove -y [软件名] 移除软件(免询问) 文件传输工具:lrzsz & xftp 区别 ltzsz:在Linux系统中使用,用于与win系统之间的文件传输 xftp:在win系统中与Xshell结合使用,用于与Linux系统之间的文件传输 (1)lrzsz安装 yum install -y lrzsz 安装lrzsz (2)lrzsz使用 rz +鼠标选择上传文件 win文件上传Linux sz [文件名] +鼠标选择下载地址 Linux文件下载到win (3)注意:仅针对文件使用,如需对文件夹使用,可将其压缩后进行操作 编译器:vim 用于编辑代码 三种常见模式 (1)普通模式:不能输入 vim [文件名] 进入文档编辑的图片模式 (2)插入模式:可输入内容 在‘正常模式’中按‘A’进入插入模式 切换插入模式 在‘插入模式’中按‘Esc’退回正常模式 退回正常模式 (3)底行模式 在‘正常模式’中按‘:’进入底行模式 进入底行模式 在‘底行模式’中按‘Esc’退回正常模式 退回正常模式 在‘底行模式’中按‘wq’……
SE_Yang 2024-10-149 0 0 -
AIX概述
一、AIX概述 AIX(Advanced Interactive eXecutive)是IBM开发的一套UNIX操作系统。它符合Open group的UNIX 98行业标准(The Open Group UNIX 98 Base Brand),通过全面集成对32-位和64-位应用的并行运行支持,为这些应用提供了全面的可扩展性。它可以在所有的IBM ~ p系列和IBM RS/6000工作站、服务器和大型并行超级计算机上运行。 二、IBM Unix 历史 自 1986 年 1 月AIX v1推出以来, AIX 就成为 IBM 进入开放系统和标准( UNIX 、 TCP/IP 和以太网)世界的催化剂。从 1990 年到 1994 年, AIX 为支持领先的硬件技术提供了一个优秀的操作系统。 AIX 从一个技术工作站平台发展为一个真正的服务器操作系统。与此同时, IBM 推出了 POWER 微处理器架构并将其与 AIX 结合在一起,制造出第一台 RISC 6000 系统,也就是后来人们所称的 RS/6000 系统。 从 1995 年到 2000 年, AIX 开始将重点放在支持商业和技术应用负载,提供对称多处理以及高端的可扩展性。 IBM 在高性能计算领域所处的领先地位源自运行 AIX 的“深蓝”这样的高可用性系统以及高能集群。随着 2001 年 AIX 5L 的发布, IBM 开始在系统分区领域实现重大的创新。 AIX 利用虚拟技术实现了逻辑分区、动态逻辑分区和微分区,将系统灵活性和使用率提高到了一个新的水平。 IBM 于 2005 年 12 月宣布 AIX 协作中心投入运行。通过 2 年 2 亿美元的投入, IBM 将使用这一设在德州奥斯汀的中心与客户、开发人员、 ISV 和学术界进行合作,推动以 AIX 技术为中心的创新,同时开发、测试和使用各种用于支持 AIX 操作系统的新应用和中间件。 AIX 协作中心将重点推动关键技术领域的系统级创新,如虚拟、安全性、性能和可扩展性,该中心将帮助 ISV 们利用新的 IBM 硬件和软件功能来改进自己在 AIX 上运行的应用。另外,这一中心还将提供包括培训、设备、有经验的技术咨……
SE_Meng 2024-10-1216 0 0 -
linux中sed命令详解
sed 是 Linux 中的一个流编辑器(stream editor),主要用于处理文本的编辑和转换。它可以从文件或标准输入读取内容,然后根据指定的模式和指令对数据进行处理,最后输出修改后的结果。它的强大之处在于可以通过脚本或命令行进行非交互式的文本处理。 sed 的基本语法 sed [选项] '脚本' 文件 脚本:描述如何编辑文本的操作。 文件:需要处理的文本文件。 选项:控制 sed 的行为,常用选项如下。 常用选项 -e:允许使用多个编辑脚本。 -i:直接修改文件(原地编辑)。 -n:静默模式,不会自动打印输出,通常与 p 命令结合使用。 -r:使用扩展正则表达式。 -f:从脚本文件读取 sed 命令。 常见命令 p:打印匹配的行。 d:删除匹配的行。 s:替换模式(substitute)。 a:在当前行之后追加文本。 i:在当前行之前插入文本。 c:用新的文本替换整行。 示例详解 1. 基本替换 sed 's/old/new/' file.txt s/old/new/:将每行中第一个匹配 old 的字符串替换为 new。 如果需要替换每行中所有匹配的字符串,可以使用 g 选项: sed 's/old/new/g' file.txt 2. 只修改特定行 sed '2s/old/new/' file.txt 只对文件的第二行进行替换操作。 3. 删除行 sed '2d' file.txt 删除第二行。 sed '2,5d' file.txt 删除第 2 到第 5 行。 4. 插入和追加 sed '2a\This is new line' file.txt 在第二行后插入文本 This is new line。 sed '2i\This is new line' file.txt 在第二行前插入文本 This is new line。 5. 多脚本处理 使用 -e 选项可以进行多个命令的组合: sed -e 's/old/new/' -e '2d' file.txt 首先将所有 old 替换为 new,然后删除第二行。 6. 扩展正则表达式 默认情况下,sed 使用基本正则表达式。要使用扩展正则表达式,可以加上 -r 选项: sed -r 's/(foo|bar)/new/' file.txt 将 foo 或 bar 替换为 new。 7. 原地修改文件……
SE_Yang 2024-10-1226 0 0 -
AIX系统日志
1、系统错误日志 存放路径:/var/adm/ras/errlog 说明:该日志记录了系统所检测到的软硬件故障和错误,尤其对系统的硬件故障有很大的参考价值,是AIX提供的最有价值的日志之一, errlog 文件用more或者其他文本的查看命令来打开我们看到的只是一对乱码,为了能够查看错误日志文件需要使用aix的errpt命令,如:errpt 列信息;errpt –a列详细信息,详细使用方法可以参考man, 2、用户的登录日志 存放路径:/var/adm/wtmp /var/adm/sulog 说明:这些日志记录了用户登录和访问服务器的情况信息,具体的日志文件有wtmp、、sulog等,它们记录的分别是不同的事件,wtmp记录的是历史的login和lognout信息,可以用last命令访问。sulog记录的是用户用su命令转变为另一用户的信息。who、last等这些命令可以查看wtmp和sulog的内容如:Last –f wtmp我们想查看最近10次登录的用户和他们的地址,可以用如下命令: last -10 3、集群管理软件hacmp的日志 存放路径:/tmp/hacmp.out 说明:HACMP是IBM提供的确保系统运行可靠性的集群套件,HACMP在每次启动和关闭时都要经历一段时间以停止服务和转换文件系统,我们可以通过对HACMP。OUT日志文件的跟踪实时的了解HACMP在启动和关闭时的信息,如出现启动失败则可以帮助我们定位错误。 可以使用tail进行跟踪,tail –f /tmp/hacmp.out 4、系统启动错误日志 存放路径:/var/adm/ras/bootlog 说明:该日志可以跟踪系统在Boot过程中发生的问题,包括服务器液晶板上的代码信息都有记载。可以使用alog命令监视这些问题, 存放在/var/adm/ras/bootlog中,可以使用alog –o –t boot命令查看该文件。 5、FTP用户操作日志 存放路径:自定义(建议/tmp/ftplog.out) 说明:很多服务器都会用到FTP功能,大量的用户通过FTP登陆到服务器上给系统的安全性带来了很大的问题,AIX给我们提供了一套……
SE_Meng 2024-10-1113 0 0 -
[转]linux 磁盘分区详解
在学习 Linux 的过程中,安装 Linux 是每一个初学者的第一个门槛。在这个过程中间,最大的困惑莫过于给硬盘进展分区。虽然,现在各种发行版本的 Linux 已经供给了友好的图形交互界面,但是很多的人还是感觉无从下手。这其中的缘由主要是不清楚 Linux 的分区规定,以及它下面最有效的分区工具― Fdisk 的使用方法。 首先我们要对硬盘分区的根本概念进展一些初步的了解,硬盘的分区主要分为根本分区 〔primary partion〕和扩大分区(extension partion)两种,根本分区和扩大分区的数目之和不能大于四个。且根本分区可以马上被使用但不能再分区。扩大分区必需再进展分区后才能使用, 也就是说它必需还要进展二次分区。那么由扩大分区再分下去的是什么呢?它就是规律分区 〔logical partion〕,况且规律分区没有数量上限制。 对习惯于使用 dos 或windows 的用户来说,有几个分区就有几个驱动器,并且每个分区都会获得一个字母标识符,然后就可以选用这个字母来指定在这个分区上的文件和名目,它们的文件构造都是独立的,格外好理解。但对这些初上手 red hat linux 的用户,可就有点恼人了。由于对 red hat linux 用户来说无论有几个分区,分给哪一名目使用,它归根结底就只有一个根名目,一个独立且唯一的文件构造。red hat linux 中每个分区都是用来组成整个文件系统的一局部,由于它承受了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和名目,且将一个分区和一个名目联系起来。这时要载入的一个分区将使它的存储空间在 一个名目下获得。 对 windows 用户来说,操作系统必需装在同一分区里,它是商业软件! 所以你没有选择的余地!对 red hat linux 来说,你有了较大的选择余地,你可以把系统文件分几个区来装〔必需要说明载入点〕,也可以就装在同一个分区中〔载入点是“/”〕。 下面从这两个方面入……
SE_Yang 2024-10-1121 0 0 -
AIX系统错误查看
AIX提供了记录硬件和软件错误日志的功能。这些错误日志可以用于失败诊断和修正错误。一旦系统的某个功能模块检测到一个错误或定义的需要记录日志的事件,则记录到/dev/error设备,把它保存在NVRAM中,这样可以保证即使在系统崩溃的情况下也不会丢失最新的错误日志。同时,错误日志进程errdemon从/dev/error文件中读取错误日志,然后根据错误模版库(/var/adm/ras/errtmpit)和错误消息库(/usr/lib/nls/msg/$LANGcodepoint.cat)对其进行处理后写入系统的错误日志/var/adm/ras/errlog中,用more或者其他文本的查看命令来打开errlog文件我们看到的只是一对乱码,为了能够查看错误日志文件需要使用aix的errpt命令 一、错误日志查询 1、显示错误日志大纲 # errptIDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTIONC69F5C9B 1217084812 P S SYSPROC SOFTWARE PROGRAM ABNORMALLY TERMINATEDC69F5C9B 1211084912 P S SYSPROC SOFTWARE PROGRAM ABNORMALLY TERMINATEDC69F5C9B 1208084912 P S SYSPROC SOFTWARE PROGRAM ABNORMALLY TERMINATED这里的输出分为六列依次为:1.错误标示符IDENTIFIER:并不唯一,由它来确定使用的错误模板,显然同一种错误的IDENTIFIER是相同的。2.时间戳TIMESTAMP:错误发生的时间,MMDDhhmmYY,依次表示月日时分年。3.类型TYPE:错误的类型,或者说严重的程度。分为6个:P PEND一个设备或者组件的可用性即将丢失,简写P;P PERF 设备或者组件的性能已经下降到一个不可接受的水平;P PERM该类型错误不可能得到恢复或者解决,为永久性的错误。该类型错误通常是最严重的错误和有一个损坏的硬件设备或软件模块。如果错误类型为 PERM 之外的其他值,通常并不表示故障,但是对这些错误进行了记录,以便可以使用诊断程序对它们进行分析。T TEMP临时性错误,表示在许多次失败的尝试后……
SE_Meng 2024-10-1019 0 0 -
[转]Win11右键恢复完整右键菜单
cmd管理员模式允许如下命令即可 reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve taskkill /f /im explorer.exe && start explorer.exe 1 2 恢复原来模式 同样打开cmd管理员模式允许如下命令即可 reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /va /f taskkill /f /im explorer.exe && start explorer.exe ———————————————— 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文链接:https://blog.csdn.net/zz960226/article/details/142756374
SE_Yang 2024-10-1013 0 0 -
入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令
系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验内存使用 cat /proc/swaps 显示哪些swap被使用 cat /proc/version 显示内核的版本 cat /proc/net/dev 显示网络适配器及统计 cat /proc/mounts 显示已加载的文件系统 lspci -tv 罗列 PCI 设备 lsusb -tv 显示 USB 设备 date 显示系统日期 cal 2007 显示2007年的日历表 date 041217002007.00 设置日期和时间 - 月日时分年.秒 clock -w 将时间修改保存到 BIOS 关机 (系统的关机、重启以及登出 ) shutdown -h now 关闭系统(1) init 0 关闭系统(2) telinit 0 关闭系统(3) shutdown -h hours:minutes & 按预定时间关闭系统 shutdown -c 取消按预定时间关闭系统 shutdown -r now 重启(1) reboot 重启(2) logout 注销 文件和目录 cd /home 进入 '/ home' 目录' cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd 进入个人的主目录 cd ~user1 进入个人的主目录 cd - 返回上次所在的目录 pwd 显示工作路径 ls 查看目录中的文件 ls -F 查看目录中的文件 ls -l 显示文件和目录的详细资料 ls -a 显示隐藏文件 ls *[0-9]* 显示包含数字的文件名和目录名 tree 显示文件和目录由根目录开始的树形结构(1) lstree 显示文件和目录由根目录开始的树形结构(2) mkdir dir1 创建一个叫做 'dir1' 的目录' mkdir dir1 dir2 同时创建两个目录 mkdir -p /tmp/dir1/dir2 创建一个目录树 rm -f file1 删除一个叫做 'file1' 的文件' rm……
SE_Yang 2024-10-0814 0 0