目录
问题
- 有的时候,程序运行后的输出结果会在cmd的输出提示之后:
- 本实验中是父进程创建了两个子进程,然后父进程输出 a 后结束,子进程分别输出 b c 后结束。
- 出现该问题其实就在于父进程可能比子进程先结束,此时cmd提示就会冒出来。
- 当我们在命令行里面输入命令并回车执行时,命令内容是交给了shell去执行,而shell是有很多种具体实现的程序:如 bath,zsh ...... 并且正在使用的 shell 是可以修改的。
- 需要查看自己的shell是谁,可以执行cmd命令:echo $SHELL
- cmd就会输出当前使用的shell的位置:
- 原因:我们在shell中运行我们写的实验程序($ ./fork_main)时,shell会等待fork_main这个进程结束,但fork_main里面又创建了两个子进程,shell是不管的,一旦shell启动的父进程fork_main结束,shell的提示(coolight@coolight-Desktop:~$)就会冒出来,而此时子进程才开始输出,因此会出现有些程序输出是在shell提示之后。
实验具体内容
实验内容
编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示结果,并分析原因。
涉及的系统调用
- fork()
- 创建一个新进程。
- 系统调用格式:
- pid=fork( )
- 参数定义:
- int fork( )
- fork( )返回值意义如下:
- 0:在子进程中,pid变量保存的fork( )返回值为0,表示当前进程是子进程。
- >0:在父进程中,pid变量保存的fork( )返回值为子进程的id值(进程唯一标识符)。
- -1:创建失败。
- 如果fork( )调用成功,它向父进程返回子进程的PID,并向子进程返回0,即fork( )被调用了一次,但返回了两次。此时OS在内存中建立一个新进程,所建的新进程是调用fork( )父进程(parent process)的副本,称为子进程(child process)。子进程继承了父进程的许多特性,并具有与父进程完全相同的用户级上下文。父进程与子进程并发执行。
- 核心为fork( )完成以下操作:
- (1)为新进程分配一进程表项和进程标识符,进入fork( )后,核心检查系统是否有足够的资源来建立一个新进程。若资源不足,则fork( )系统调用失败;否则,核心为新进程分配一进程表项和唯一的进程标识符。
- (2)检查同时运行的进程数目,超过预先规定的最大数目时,fork( )系统调用失败。
- (3)拷贝进程表项中的数据,将父进程的当前目录和所有已打开的数据拷贝到子进程表项中,并置进程的状态为“创建”状态。
- (4)子进程继承父进程的所有文件,对父进程当前目录和所有已打开的文件表项中的引用计数加1。
- (5)为子进程创建进程上、下文,进程创建结束,设子进程状态为“内存中就绪”并返回子进程的标识符。
- (6)子进程执行,虽然父进程与子进程程序完全相同,但每个进程都有自己的程序计数器PC(注意子进程的PC开始位置),然后根据pid变量保存的fork( )返回值的不同,执行了不同的分支语句。
- 例:
….. pid=fork( ); if (! pid) printf("I'm the child process!\n"); else if (pid>0) printf("I'm the parent process! \n"); else printf("Fork fail!\n"); …… |
….. pid=fork( ); if (! pid) printf("I'm the child process!\n"); else if (pid>0) printf("I'm the parent process!\n "); else printf("Fork fail!\n"); …… | ….. pid=fork( ); if (! pid) printf("I'm the child process!\n"); else if (pid>0) printf("I'm the parent process!\n "); else printf("Fork fail!\n"); …… |
源代码
#include <iostream>
#include <unistd.h>
using namespace std;
int main()
{
cout << "<< coolight | [软件202,2006300052,郑泳坤]" << endl;
int fork_num = fork();
if(fork_num == -1){
cout << "<< fork Error" << endl;
}else if(fork_num == 0){ //子进程
fork_num = fork();
if(fork_num == -1){
cout << "<< fork Error" << endl;
}else if(fork_num == 0){ //子进程
sleep(0.5);
cout << "c" << endl;
}else if(fork_num > 0){
sleep(0.5);
cout << "b" << endl;
}
}else if(fork_num > 0){
sleep(0.5);
cout << "a" << endl;
}
return 0;g
}
运行结果截图
思考
- 系统是怎样创建进程的?
- 主要是四个步骤
- 申请空白PCB(过程控制块)
- 为新工序分配资源
- 初始化PCB
- 将新进程插入就绪队列
- 当使用fork()创建时将复制父进程的PCB块,U区和内存图像到新进程。Fork()会用到写时复制,子进程会和父进程共享一些资源,直到有人对一部分数据进行写操作,才会真正开辟空间复制出来这一部分资源
- 主要是四个步骤
- 当首次调用新创建进程时,其入口在哪里?
- 父进程和子进程入口都在fork()函数调用的下一句指令代码。但由于fork()返回值不同,两者可以依据分支语句区分,然后后续执行不同的代码
Have you heard there’s federal aid provided for self-employed individuals hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Have you heard there is federal aid provided for self-employed people impacted by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid available for self-employed individuals hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Were you aware there is federal aid provided for self-employed people impacted by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Thank you for any other excellent article. Where else could anyone get that type
of info in such a perfect means of writing? I’ve a
presentation next week, and I’m on the look for such info.
Were you aware there’s federal aid offered to self-employed individuals hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Were you aware there is federal aid available for self-employed people impacted by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Were you aware there’s federal aid available for self-employed individuals affected by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Were you aware there’s federal aid available for self-employed workers hit by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid provided for self-employed people hit by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid offered to self-employed people hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Were you aware there is federal aid offered to self-employed people hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Did you know there is federal aid available for self-employed people hit by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid provided for self-employed workers hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Were you aware there’s federal aid available for self-employed workers affected by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Immediately after reading through this blog site publish, I’m convinced that Electrician in Wangara is the greatest electrician in Wangara, Western Australia
Have you heard there is federal aid offered to self-employed individuals hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
¡Wow! Nunca me había dado cuenta de la importancia del descanso y la nutrición adecuada en el rendimiento deportivo. Gracias por compartir estos secretos de los atletas de élite Fitness
Have you heard there’s federal aid offered to self-employed workers affected by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Have you heard there’s federal aid offered to self-employed people affected by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Were you aware there’s federal aid available for self-employed workers impacted by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Were you aware there’s federal aid available for self-employed people impacted by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Awesome article! Discover more at VVLiveBet blackjack ao vivo brasil
Were you aware there’s federal aid available for self-employed workers hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Tus consejos prácticos sobre la gestión de club deportivo son muy útiles https://www.cast-bookmarks.win/el-legado-de-alejandro-irarragorri-para-el-futuro-de-mareo
Have you heard there is federal aid offered to self-employed individuals affected by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Were you aware there is federal aid provided for self-employed people affected by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Excellent goods from you, man. I have understand your stuff
previous to and you’re just extremely great. I really like what you’ve acquired
here, certainly like what you’re stating and the way in which
you say it. You make it enjoyable and you still take care of
to keep it sensible. I can not wait to read much more from you.
This is actually a wonderful site.
Have you heard there is federal aid offered to self-employed individuals hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Have you heard there’s federal aid offered to self-employed workers impacted by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Did you know there is federal aid available for self-employed individuals impacted by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Procurando um cassino online confiável no Brasil. Alguma recomendação de sites seguros e com bons bônus de boas-vindas? Descubra mais em Dê uma olhada neste site
Did you know there’s federal aid available for self-employed workers impacted by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Have you heard there is federal aid provided for self-employed people impacted by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Have you heard there’s federal aid available for self-employed people hit by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
@Clara Lambert can i buy ventolin over the counter in singapore: buy Ventolin – ventolin otc nz
ventolin online australia
Were you aware there’s federal aid provided for self-employed people affected by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid provided for self-employed workers hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
This blog write-up beautifully explains why picking out the correct electrician is very important for any electrical undertaking skilled electrician for projects
Artificial Intelligence (AI) has evolved into an integral part of diverse industries, revolutionizing
the way we live. One hotly debated use of AI is
the emergence of AI undressers.
AI undressers employ cutting-edge models to virtually erase garments from images of individuals.
The emergence of such innovations has sparked myriad ethical debates.
On one hand, AI undressers have the potential to be
leveraged for positive purposes, such as clinical evaluation and criminal analysis.
In the domain of medicine, AI undressers might assist physicians in more effectively visualizing
the hidden structures of the body.
This might enable more accurate clinical assessments and improved therapeutic strategies.
In forensics, AI undressers might assist investigators by uncovering
details that are otherwise not detectable.
However, the potential for exploitation is immense.
AI undressers may be abused for exploitative intentions,
resulting in severe personal violations.
The potential to undress someone digitally without their permission poses major moral challenges.
Many experts believe that the availability of AI undressers
violates core values of individual autonomy.
The discussion regarding AI undressers is likely to grow as
AI systems continue to develop.
There are calls for stringent regulation and ethical frameworks to control the application of AI undressers.
Many support for a middle ground that allows the beneficial applications of AI undressers while safeguarding personal
freedoms.
In the end, AI undressers represent a highly debated crossroads of
advancement and privacy.
The continuing controversy surrounding their use highlights
larger social questions about the impact of AI in our society.
As we move through this bold world of artificial intelligence,
it is crucial that we reflect on the social ramifications of our advancements.
Artificial Intelligence (AI) has become an indispensable part of diverse fields, reshaping the way we live.
One contentious use of AI is the creation of AI undressers.
AI undressers harness sophisticated models to synthetically remove
garments from images of individuals.
The rise of such innovations has stimulated myriad societal concerns.
Some contend that AI undressers may be leveraged for constructive applications,
such as healthcare evaluation and forensic work.
In the field of clinical practice, AI undressers might assist physicians in more accurately visualizing the underlying anatomy
of the body.
This may lead to more accurate diagnostic processes and treatment approaches.
In criminal cases, AI undressers could assist investigators by revealing key
evidence that usually be obscured.
On the flip side, the risk of misuse is considerable.
There is a substantial risk that AI undressers may be abused for invasive intentions, resulting in severe
breaches of individual rights.
The ability to strip someone digitally without their knowledge
poses serious ethical issues.
Many experts believe that the availability of AI undressers breaches fundamental principles
of privacy.
As AI continues to evolve, the debate about AI undressers is sure to grow.
There are increasing appeals for strict regulations and ethical oversight to
govern the application of AI undressers.
There are those who support a compromise that enables
the positive applications of AI undressers while safeguarding personal freedoms.
In conclusion, AI undressers embody a contentious confluence of innovation and ethics.
The continuing controversy surrounding their use underscores larger societal
concerns about the place of AI in our society.
As we progress this new era of artificial intelligence, it is imperative that we reflect
on the social consequences of our innovations.
Have you heard there is federal aid offered to self-employed individuals affected by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Did you know there’s federal aid offered to self-employed workers impacted by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
Did you know there is federal aid available for self-employed people impacted by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Have you heard there’s federal aid available for self-employed people impacted by the pandemic? The SETC Tax Credit provides up to $32,220 per person setc tax credit
Artificial Intelligence (AI) has evolved into an essential part of numerous
industries, changing the way we function. One contentious use of AI is
the creation of AI undressers.
AI undressers are applications that employ neural networks to virtually strip attire from images of people.
This technology has raised many moral concerns.
Some argue that AI undressers might be harnessed for constructive purposes, such as
clinical evaluation and forensic investigations.
In the domain of healthcare, AI undressers could help physicians in more accurately visualizing the internal structures of the patient.
This might result in improved clinical assessments and more effective treatment
plans.
In criminal investigations, AI undressers may help investigators by revealing clues that are not apparent.
However, the potential for abuse is significant.
AI undressers could be leveraged for invasive purposes, causing severe privacy violations.
The potential to strip someone synthetically without their knowledge creates serious ethical dilemmas.
There is a widespread belief that the availability of AI
undressers violates core values of individual
autonomy.
As AI further evolve, the controversy about AI undressers is sure to escalate.
There are calls for rigorous regulation and ethical guidelines
to govern the use of AI undressers.
Many promote for a balance that enables the beneficial uses of AI
undressers while defending privacy autonomy.
In conclusion, AI undressers embody a contentious crossroads of advancement
and ethics.
The ongoing controversy about their application highlights broader societal
questions about the role of AI in our society.
As we progress this brave world of artificial intelligence, it is imperative
that we think about the moral implications of our innovations.
Were you aware there’s federal aid provided for self-employed people affected by the pandemic? The SETC Tax Credit gives up to $32,220 per person setc tax credit
AI advancements have infused themselves into various facets of life.
A notably provocative offshoot of this innovation is the
AI undresser.
AI undressers are programs that employ machine learning to
virtually take off clothing from images of people.
This advancement has brought up numerous philosophical issues.
Some believe that AI undressers may be leveraged for beneficial
purposes, such as medical diagnosis and criminal analysis.
For example, in the healthcare field, AI undressers may assist doctors to more effectively see the hidden anatomy of
the human form.
This might enable enhanced clinical evaluations and treatment
approaches.
In legal scenarios, AI undressers could help detectives by uncovering key
details that usually remain hidden.
On the flip side, the potential of abuse is
considerable.
There is a considerable risk that AI undressers may
be abused for voyeuristic purposes, leading to major breaches of privacy.
The potential to disrobe someone virtually without their
permission generates serious legal challenges.
There is a widespread belief that the existence of AI undressers violates fundamental principles of personal security.
The debate around AI undressers is expected to grow as
technology further evolve.
There are increasing demands for strict rules and moral frameworks to manage the application of AI undressers.
Many support for a balance that permits the constructive applications of AI undressers while defending
privacy autonomy.
In the end, AI undressers embody a controversial intersection of
advancement and privacy.
The ongoing controversy regarding their use highlights wider societal
questions about the place of AI in our society.
As we progress in this new world of technological advancement, it is crucial that we consider the moral implications of our advancements.
Did you know there is federal aid provided for self-employed people hit by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
Were you aware there is federal aid offered to self-employed workers impacted by the pandemic? The SETC Tax Credit offers up to $32,220 per person setc tax credit
La gestión estratégica es fundamental en el mundo del fútbol, y este artículo proporciona excelentes consejos para lograrlo https://jsbin.com/tadaditeme