网站首页 > 文章精选 正文
Unix是一个操作系统,它是Ubuntu、Solaris、POSIX等所有操作系统的基础。它是在20世纪70年代由肯·汤普森(Ken Thompson)、丹尼斯·里奇(Dennis Ritchie)和AT&T实验室的其他人开发的。它最初是为开发软件的程序员而不是为非程序员设计的。
Unix和C被AT&T发现并分发给政府和学术机构,这使得它们都被移植到比任何其他操作系统更广泛的机器家族中。在这个操作系统中,开发人员主要关注的是内核。Unix被认为是操作系统的核心。Unix操作系统的系统结构如下:
1)Layer-1:硬件
它包含所有与硬件相关的信息。
2)Layer-2:内核
它与硬件交互,大多数任务(如内存管理,任务调度和管理)由内核完成。
3)Layer-3:Shell命令
Shell是处理您的请求的实用程序。当您在终端上键入命令时,shell会解释该命令并调用所需的程序。
有各种命令,例如cp,mv,cat,grep,id,wc,nroff,a.out等。
4)Layer-4:应用层
它是执行给定外部应用程序的最外层。
该图显示了三个级别:用户,内核和硬件。
1)系统调用和库接口表示用户程序和内核之间的边界。系统调用看起来像C程序中的普通函数调用。汇编语言程序可以直接调用系统调用,而无需系统调用库。这些库在编译时与程序链接。
2)系统调用集分为与文件子系统交互的系统调用和一些与过程控制子系统交互的系统调用。文件子系统管理文件,分配文件空间,管理可用空间,控制对文件的访问以及为用户检索数据。
3)进程通过一组特定的系统调用与文件子系统交互,例如open(打开文件进行读写)、close、read、write、stat(查询文件属性)、chown(更改文件所有者的记录)和chmod(更改文件的访问权限)。
4)文件子系统使用缓冲机制访问文件数据,该缓冲机制调节内核和辅助存储设备之间的数据流。缓冲机制与块I/O设备驱动程序进行交互,以启动与内核之间的数据传输。
5)设备驱动程序是控制外围设备操作的内核模块。文件子系统还直接与原始I/O设备驱动程序进行交互,而无需缓冲机制的干预。最后,硬件控制负责处理中断并与机器通信。在执行过程时,磁盘或终端等设备可能会中断CPU。如果是这样,内核可以在为中断服务后恢复被中断进程的执行。
6)中断不是由特殊进程提供服务,而是由内核中的特殊功能(在当前运行的进程的上下文中调用)服务。
Unix和Linux之间的区别
Linux本质上是Unix的克隆。但是,基本区别如下所示:
猜你喜欢
- 2025-07-03 Windows NT vs. Unix| Ubuntu 24.10 新特性:权限提示功能
- 2025-07-03 UNIX 查看磁盘空间常用命令(查看磁盘空间 linux命令)
- 2025-07-03 「服务器数据恢复」Unix环境zfs文件系统下重组RAID5案例分享
- 2025-07-03 NOPEN—方程式组织针对Unix系统的后门
- 2025-07-03 继Linux和Git之后,Linus官宣新作品直指元宇宙
- 2025-07-03 UNIX环境高级编程的10个重点总结(unix 环境高级编程)
- 2025-07-03 「探秘ptrace」UNIX系统调用的神器,应用场景及使用方法介绍
- 2025-07-03 《UNIX环境高级编程》的10个重点总结
- 2025-07-03 非Unix开源操作系统Haiku项目迎来20周岁生日
- 2025-07-03 Linux云计算系列之UNIX与Linux关系
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)