当前位置: 首页 > wzjs >正文

房地产类型的网站建设简单免费制作手机网站

房地产类型的网站建设,简单免费制作手机网站,专门做音乐的网站,商城网站怎么做1.冯诺依曼体系结构 我们常见的计算机,笔记本,服务器基本上都要遵守冯诺依曼体系结构 截⾄⽬前,我们所认识的计算机,都是由⼀个个的硬件组件组成 输⼊单元:包括键盘, ⿏标,扫描仪, 写板等 中央处理器(CP…

1.冯诺依曼体系结构

我们常见的计算机,笔记本,服务器基本上都要遵守冯诺依曼体系结构

截⾄⽬前,我们所认识的计算机,都是由⼀个个的硬件组件组成
输⼊单元:包括键盘, ⿏标,扫描仪, 写板等
中央处理器(CPU):含有运算器和控制器等
输出单元:显⽰器,打印机等
关于冯诺依曼,必须强调⼏点:
这⾥的存储器指的是内存
不考虑缓存情况,这⾥的CPU能且只能对内存进⾏读写,不能访问外设(输⼊或输出设备)
外设(输⼊或输出设备)要输⼊或者输出数据,也只能写⼊内存或者从内存中读取。
⼀句话,所有设备都只能直接和内存打交道。

2.操作系统

2.1概念

操作系统是管理计算机硬件与软件资源的系统软件,它充当用户与计算机硬件之间的“桥梁”,负责协调硬件资源(CPU、内存、磁盘等)的分配,并为应用程序提供运行环境。

类比:想象操作系统是“管家”或“交通警察”——它决定哪个程序何时使用CPU、如何分配内存,并确保所有任务有序运行。

2.2设计OS的目的

对下,与硬件交互,管理所有的软硬件资源
对上,为⽤⼾程序(应⽤程序)提供⼀个良好的执⾏环境

2.3核心功能

操作系统通过以下核心功能实现资源管理:

功能模块作用
进程管理控制程序的执行,分配CPU时间片(如时间片轮转调度算法)。
内存管理分配和回收内存空间,防止程序间互相干扰(如虚拟内存技术)。
文件系统管理磁盘数据的存储、检索和组织(如NTFS、EXT4等文件格式)。
设备管理控制外部设备(打印机、键盘等)的驱动和通信。
用户接口提供命令行(CLI)或图形界面(GUI)让用户与计算机交互。

2.4系统调用的概念和库函数

概念定义关键特点
系统调用操作系统内核提供给用户程序的接口,用于请求内核服务(如文件读写、进程创建)。- 直接访问内核
- 触发用户态到内核态的切换
库函数封装了常用功能的函数集合(如标准库、数学库),可能间接调用系统调用。- 提供高层抽象
- 可跨平台或依赖系统

承上启下
那在还没有学习进程之前,就问⼤家,操作系统是怎么管理进⾏进程管理的呢?很简单,先把进程描 述起来,再把进程组织起来, 简单一句话先描述在组织

3.进程

3-1 基本概念与基本操作
课本概念:程序的⼀个执⾏实例,正在执⾏的程序等
内核观点:担当分配系统资源(CPU时间,内存)的实体。
3-1-2 描述进程-PCB
基本概念
进程信息被放在⼀个叫做进程控制块的数据结构中,可以理解为进程属性的集合。
课本上称之为PCB(process control block),Linux操作系统下的PCB是: task_struct
task_struct-PCB的⼀种
在Linux中描述进程的结构体叫做task_struct。
task_struct是Linux内核的⼀种数据结构,它会被装载到RAM(内存)⾥并且包含着进程的信息
3-2-3 task_ struct
内容分类
标⽰符: 描述本进程的唯⼀标⽰符,⽤来区别其他进程。
状态: 任务状态,退出代码,退出信号等。
优先级: 相对于其他进程的优先级。
程序计数器: 程序中即将被执⾏的下⼀条指令的地址。
内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
上下⽂数据: 进程执⾏时处理器的寄存器中的数据[休学例⼦,要加图CPU,寄存器]。
I∕O状态信息: 包括显⽰的I/O请求,分配给进程的I∕O设备和被进程使⽤的⽂件列表。
记账信息: 可能包括处理器时间总和,使⽤的时钟数总和,时间限制,记账号等。
组织进程
可以在内核源代码⾥找到它。所有运⾏在系统⾥的进程都以task_struct链表的形式存在内核⾥。
3-1-4 查看进程
1. 进程的信息可以通过 /proc 系统⽂件夹查看
如:要获取PID为1的进程信息,你需要查看 /proc/1 这个⽂件夹。
2. ⼤多数进程信息同样可以使⽤top和ps这些⽤⼾级⼯具来获取
类型工具特点
静态查看ps显示当前进程快照,支持自定义过滤和输出格式
pstree以树形结构展示进程父子关系
动态监控top实时刷新进程状态(CPU、内存占用等)
htoptop的增强版(支持颜色、鼠标操作、树状视图等)
深度分析/proc/[PID]通过文件系统直接读取进程详细信息(如内存映射、打开文件)
strace跟踪进程的系统调用
lsof列出进程打开的文件和网络连接
3-1-5 通过系统调⽤获取进程标⽰符

在Linux中,进程标识符(PID)、父进程标识符(PPID)、线程标识符(TID)等关键信息可通过以下系统调用直接获取:

系统调用功能对应库函数系统调用号(x86_64)
getpid获取当前进程PIDgetpid()39
getppid获取父进程PIDgetppid()110
gettid获取线程ID(TID)无直接库函数186
1-6 通过系统调⽤创建进程-fork初识
可以通过linux指令 man fork来初步了解一下fork
 
fork会有两份返回值,父子进程代码共享,数据各自开辟空间,每个都是私有一份代码数据

fork()是创建新进程的系统调用,调用后生成一个与原进程(父进程)几乎完全相同的子进程。核心特点包括:

一次调用,两次返回:父进程返回子进程PID,子进程返回0(失败时返回-1)。

写时复制(COW):内核延迟内存复制,仅在修改时创建实际副本,提升性能。

nclude <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
int ret = fork();
if(ret < 0){
perror("fork");
return 1;
}
else if(ret == 0){ //child
printf("I am child : %d!, ret: %d\n", getpid(), ret);
}else{ //father
printf("I am father : %d!, ret: %d\n", getpid(), ret);
}
sleep(1);
return 0;
}
fork 之后通常要⽤ if 进⾏分流
注意:fork为什么会返回两个值这个后面我们在详细讲解这个文章先介绍到这里
http://www.dtcms.com/wzjs/226750.html

相关文章:

  • 网站开发技术有什么软件站长之家ip地址归属查询
  • 安徽网站建设费用自动发帖软件
  • 我国哪些网站是做调查问卷的如何做网站搜索引擎优化
  • 苏州园区已经烂掉了徐州百度seo排名
  • 重庆网站建设外包公司排名网站大全软件下载
  • 专门做悬疑推理小说的阅读网站论文收录网站有哪些
  • 西安保洁公司网站建设武汉seo报价
  • 网站 数据库模板百度商家版下载
  • 游戏网站开发文档国内十大软件培训机构
  • 微信网站建设收费标准网站访问量
  • 商城网站建设定制网站建设fifa最新世界排名
  • 上海知名网站淘宝关键词优化技巧
  • 自己做的网站为什么访问不软文发布推广平台
  • 郫县做网站大二网络营销实训报告
  • 网站备案正常多久餐饮营销方案
  • 常用的网站推广seo的主要内容
  • 动态网站开发项目实训报告3步打造seo推广方案
  • 百能网是哪家公司做的网站网络营销成功案例3篇
  • 长沙做网站优化搜索引擎推广的基本方法
  • 漯河网站制作sem推广代运营
  • 做任务佣金网站源码世界球队最新排名榜
  • 国外做论坛网站营销活动有哪些
  • 做网站用的图片怎样压缩google搜索中文入口
  • 网站制作价格河北seo基础
  • 成都网站运营网络推广赚钱
  • 网站新站郑州网站建设最便宜
  • 嘉祥网站建设百度百科词条创建入口
  • 哪些做调查问卷挣钱的网站长沙靠谱关键词优化公司电话
  • wordpress出境游seo网络优化是做什么的
  • wordpress5.0后台慢外贸网站优化