t型布局网站怎么做/app代理推广合作

t型布局网站怎么做,app代理推广合作,不备案的网站需要注销吗,如何去推广一个app1.进程创建 1.1fork函数初识 在linux中fork函数是⾮常重要的函数&#xff0c;它从已存在进程中创建⼀个新进程。新进程为⼦进程&#xff0c;⽽原进 程为⽗进程。 #include <unistd.h> pid_t fork(void); 返回值&#xff1a;⾃进程中返回0&#xff0c;⽗进程返回⼦进程id…

1.进程创建

1.1fork函数初识

在linux中fork函数是⾮常重要的函数,它从已存在进程中创建⼀个新进程。新进程为⼦进程,⽽原进 程为⽗进程。

#include <unistd.h>
pid_t fork(void);
返回值:⾃进程中返回0,⽗进程返回⼦进程id,出错返回-1
进程调⽤fork,当控制转移到内核中的fork代码后,内核做:
分配新的内存块和内核数据结构给⼦进程
将⽗进程部分数据结构内容拷⻉⾄⼦进程
添加⼦进程到系统进程列表当中
fork返回,开始调度器调度
当⼀个进程调⽤fork之后,就有两个⼆进制代码相同的进程。⽽且它们都运⾏到相同的地⽅。但每个进 程都将可以开始它们⾃⼰的旅程,看如下程序
int main( void )
{
pid_t pid;
printf("Before: pid is %d\n", getpid());
if ( (pid=fork()) == -1 )perror("fork()"),exit(1);
printf("After:pid is %d, fork return %d\n", getpid(), pid);
sleep(1);
return 0;
}
运⾏结果:
[root@localhost linux]# ./a.out
Before: pid is 43676
After:pid is 43676, fork return 43677
After:pid is 43677, fork return 0
这⾥看到了三⾏输出,⼀⾏before,两⾏after。进程43676先打印before消息,然后它有打印after。 另⼀个after消息有43677打印的。注意到进程43677没有打印before,为什么呢?如下图所⽰
所以,fork之前⽗进程独⽴执⾏,fork之后,⽗⼦两个执⾏流分别执⾏。注意,fork之后,谁先执⾏完 全由调度器决定。

1.2 fork的返回值

fork() 是 Unix/Linux 系统创建新进程的系统调用,其特殊之处在于 "一次调用,两次返回"

  • 在父进程中返回 子进程的 PID(>0)

  • 在子进程中返回 0

  • 出错时返回 -1

1.3写时拷贝

通常,⽗⼦代码共享,⽗⼦再不写⼊时,数据也是共享的,当任意⼀⽅试图写⼊,便以写时拷⻉的⽅ 式各⾃⼀份副本。具体⻅下图
核心概念:
写时拷贝是一种  延迟内存复制 的优化策略,父子进程  共享同一份物理内存,直到某个进程尝试  修改内存页 时,操作系统才会进行实际复制
关于触发写实拷贝的条件是:
  1. CPU 触发 页错误(Page Fault)

  2. 内核检查错误原因是否为 COW

  3. 分配新的物理页,复制原页内容

  4. 修改故障进程的页表,指向新物理页

  5. 恢复进程执行

1。4 fork调⽤失败的原因
系统中有太多的进程
实际⽤⼾的进程数超过了限制

2.终止进程

进程终⽌的本质是释放系统资源,就是释放进程申请的相关内核数据结构和对应的数据和代码
2-1 进程退出场景
代码运⾏完毕,结果正确
代码运⾏完毕,结果不正确
代码异常终⽌
2-2 进程常⻅退出⽅法
正常终⽌(可以通过 echo $? 查看进程退出码):
1. 从main返回
2. 调⽤exit
3. _exit
2-2-1 退出码
退出码(退出状态)可以告诉我们最后⼀次执⾏的命令的状态。在命令结束以后,我们可以知道命令
是成功完成的还是以错误结束的。其基本思想是,程序返回退出代码 0 时表⽰执⾏成功,没有问题。
代码 1 0 以外的任何代码都被视为不成功。
Linux Shell 中的主要退出码
2.3 exit函数

1. 标准库函数 vs 系统调用

函数原型所属标准关键差异
void exit(int status)C标准库执行完整清理:刷新缓冲区、调用atexit注册函数
void _exit(int status)POSIX系统调用直接终止进程,不执行I/O缓冲清理

资源回收关键机制

资源类型处理方式例外情况
文件描述符全部关闭
内存泄漏用户态内存不会自动释放需依赖OS内核回收
临时文件未删除的临时文件保留需手动unlink
共享内存引用计数减1计数为0时才释放

注意事项:

1. 多线程环境

  • 调用exit()会终止 整个进程(所有线程)

  • 替代方案:

    • pthread_exit() 终止当前线程

    • 主线程使用return退出

2. 信号处理冲突

  • 在信号处理函数中调用exit()是安全的

  • 避免在SIGKILL/SIGSTOP处理中操作(信号不可捕获)

2-3-1 return退出
return是⼀种更常⻅的退出进程⽅法。执⾏return n等同于执⾏exit(n),因为调⽤main的运⾏时函数会 将main的返回值当做 exit的参数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/74139.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows免密SSH连接 ubuntu教程

文章目录 前情提要step1. 在windows下生成SSH密钥step2. SSH公钥copy到ubuntu的~/.ssh/authorized_keys内step3. 修改文件权限&#xff08;这一步完成后就可以实现免密SSH连接了&#xff09; 前情提要 ubuntu下安装SSH服务 sudo apt-get install openssh-serverwindows下安装…

《Linux运维实战:Ubuntu 22.04配置pam实现密码复杂度策略》

总结&#xff1a;整理不易&#xff0c;如果对你有帮助&#xff0c;可否点赞关注一下&#xff1f; 更多详细内容请参考&#xff1a;Linux运维实战总结 一、背景信息 由于安全方面的考虑&#xff0c;先要求Ubuntu 22.04系统需配置密码复杂度策略&#xff0c;先要求如下&#xff1…

魔改chromium——基础环境搭建

谷歌chromium环境要求详细文档 软件和环境要求&#xff0c;必须安装&#xff0c;硬性要求 系统环境&#xff1a;Windows 10&#xff0c;内存最小8GB&#xff0c;推荐16GB&#xff0c;NTFS格式磁盘最少100GB空间Git版本&#xff1a;安装最新版本即可&#xff0c;Git桌面端下载…

电子文档安全管理系统V6.0接口backup存在任意文件下载漏洞

免责声明&#xff1a;本号提供的网络安全信息仅供参考&#xff0c;不构成专业建议。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权&#xff0c;请及时与我联系&#xff0c;我将尽快处理并删除相关内容。 漏洞描述 电子文档安全管理系统 V6.0 reso…

00.【Linux系统编程】 Linux初识(云服务器设置CentOS并使用、Xshell链接云服务器)

目录 一、华为云服务器免费体验申请 二、Xshell远程链接创建好的华为云服务器 2.1 下载Xshell 2.2 Xshell远程连接华为云服务器 一、华为云服务器免费体验申请 华为云官网 1. 进入华为云官网&#xff0c;最上面一栏点活动&#xff0c;并进入免费体验中心。 2. 找到含有“…

vs2022中使用spdlog、C++日志

spdlog::set_level(spdlog::level::info); // 只显示info及比info高级的信息&#xff0c;trace 和 debug 不显示 参考&#xff1a;Windows10中使用VS2022和Cmake编译构建C开源日志库-spdlog-腾讯云开发者社区-腾讯云 spdlog C日志管理 | 快速上手教程 - 知乎 1.按照上述步骤…

SOME/IP-SD -- 协议英文原文讲解10

前言 SOME/IP协议越来越多的用于汽车电子行业中&#xff0c;关于协议详细完全的中文资料却没有&#xff0c;所以我将结合工作经验并对照英文原版协议做一系列的文章。基本分三大块&#xff1a; 1. SOME/IP协议讲解 2. SOME/IP-SD协议讲解 3. python/C举例调试讲解 5.1.5 Non…

Android OpenGLES 360全景图片渲染(球体内部)

概述 360度全景图是一种虚拟现实技术&#xff0c;它通过对现实场景进行多角度拍摄后&#xff0c;利用计算机软件将这些照片拼接成一个完整的全景图像。这种技术能够让观看者在虚拟环境中以交互的方式查看整个周围环境&#xff0c;就好像他们真的站在那个位置一样。在Android设备…

代码随想录算法训练营第三十二天 | 509.斐波那契数 70.爬楼梯 746.使用最小花费爬楼梯

509. 斐波那契数 题目链接&#xff1a;509. 斐波那契数 - 力扣&#xff08;LeetCode&#xff09; 文章讲解&#xff1a;代码随想录 视频讲解&#xff1a;手把手带你入门动态规划 | LeetCode&#xff1a;509.斐波那契数_哔哩哔哩_bilibili 思路&#xff1a;输入&#xff1a;…

拼多多 anti-token unidbg 分析

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向分析 版本7.3-7.4 都试过加密没什…

【工具】BioPred一个用于精准医疗中生物标志物分析的 R 软件包

介绍 R 语言包 BioPred 提供了一系列用于精准医疗中的亚组分析和生物标志物分析的工具。它借助极端梯度提升&#xff08;XGBoost&#xff09;算法&#xff0c;并结合倾向得分加权和 A 学习方法&#xff0c;帮助优化个体化治疗规则&#xff0c;从而简化亚组识别过程。BioPred 还…

横扫SQL面试——时间序列分组与合并(会话划分)问题

横扫SQL面试题 &#x1f4cc; 时间序列分组与合并问题 &#x1f4da; 横扫SQL面试——时间序列分组与合并解析 &#x1f31f; 核心问题类型 时间序列分组&#xff08;Sessionization&#xff09; 处理具有时间维度的连续数据流&#xff0c;根据特定规则&#xff08;如时间间隔…

PCB钻孔之多边形孔分析

问题分析 在钻孔过程中&#xff0c;钻头的运动可以分为两部分&#xff1a; 公转&#xff1a;钻头的轴线绕理想轴线&#xff08;钻孔中心线&#xff09;做圆周运动。自转&#xff1a;钻头绕自身轴线做旋转运动。 由于公转和自转的叠加&#xff0c;钻尖的运动轨迹会形成复杂的…

Android源码之App启动

目录 App启动概述 App启动过程 App启动过程图 源码概述 跨进程启动 进程内启动 下面以应用桌面Launcher启动App的MainActivity来举例&#xff1a; App启动概述 首先&#xff0c;MainActivity是由Launcher组件来启动的&#xff0c;而Launcher又是通过Activity管理服务Act…

生活电子常识——cmd不能使用anaconda的python环境,导致输入python打开应用商店

前言 电脑已经安装了anaconda,从自带的Anaconda Prompt (Anaconda3)中是可以识别python环境的&#xff0c;然而切换到cmd时&#xff0c;突然发现cmd中无法识别anaconda的python环境&#xff0c;竟然打开了应用商店让我安装Python&#xff0c;这当然是不对的。 解决 这是因为…

搭建前端环境和后端环境

搭建前端环境 ①、安装vscode&#xff0c;并安装相应的插件工具 ②、安装node.js&#xff0c;可以选择当前版本&#xff0c;或者其他版本 ③、创建工作区 创建一个空文件夹&#xff0c;然后通过vscode工具打开&#xff0c;保存为后缀名为.code-workspace ④、从gitee…

线程概念与控制(下)

线程概念与控制&#xff08;中&#xff09;https://blog.csdn.net/Small_entreprene/article/details/146539064?sharetypeblogdetail&sharerId146539064&sharereferPC&sharesourceSmall_entreprene&sharefrommp_from_link对于之前学习的内容&#xff0c;我们…

OpenCV 图形API(3)高层次设计概览

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 描述 G-API 是一个异构框架&#xff0c;提供了统一的 API 来使用多个支持的后端编程图像处理流水线。 关键的设计理念是在指定使用哪些内核和设备时保持流…

阿里云Tair KVCache:打造以缓存为中心的大模型Token超级工厂

一、Tair KVCache 简介 Tair KVCache 是阿里云瑶池旗下云数据库 Tair 面向大语言模型推理场景推出的 KVCache 缓存加速服务。 随着互联网技术的演进与流量规模的激增&#xff0c;缓存技术逐渐成为系统架构的核心组件。该阶段催生了 Redis 等开源缓存数据库&#xff0c;阿里巴巴…

iOS自定义collection view的page size(width/height)分页效果

前言 想必大家工作中或多或少会遇到下图样式的UI需求吧 像这种cell长度不固定&#xff0c;并且还能实现的分页效果UI还是很常见的 实现 我们这里实现主要采用collection view&#xff0c;实现的方式是自定义一个UICollectionViewFlowLayout的子类&#xff0c;在这个类里对…