代码编织梦想

/*
 *    1 . 我们添加一个 tracepoint 来看下该函数的执行通路
 *    2 . 该函数在设计的时候做了怎么样的考虑
 *    3 . 该函数可以优化的地方
 *    4 . 实验验证.
 */
 /*
  *    该函数的唯一调用者是 copy_process(). 我们先来看下它的参数,然后再看它的执行通路.
  *    @p 
  * 	 copy_process() {
  * 	 	dup_task_struct() {
  * 			alloc_task_struct_node()
  * 			.....
  * 		}
  *      }
  */
int sched_fork(unsigned long clone_flags, struct task_struct *p)
{
	__sched_fork(clone_flags, p);
}
static void __sched_fork(unsigned long clone_flags, struct task_struct *p)
{
	p->on_rq			= 0;

	p->se.on_rq			= 0;
	p->se.exec_start		= 0;
	p->se.sum_exec_runtime		= 0;
	p->se.prev_sum_exec_runtime	= 0;
	p->se.nr_migrations		= 0;
	p->se.vruntime			= 0;
	INIT_LIST_HEAD(&p->se.group_node);

#ifdef CONFIG_FAIR_GROUP_SCHED
	p->se.cfs_rq			= NULL;
#endif

#ifdef CONFIG_SCHEDSTATS
	/* Even if schedstat is disabled, there should not be garbage */
	memset(&p->se.statistics, 0, sizeof(p->se.statistics));
#endif

	RB_CLEAR_NODE(&p->dl.rb_node);
	init_dl_task_timer(&p->dl);
	init_dl_inactive_task_timer(&p->dl);
	__dl_clear_params(p);

	INIT_LIST_HEAD(&p->rt.run_list);
	p->rt.timeout		= 0;
	p->rt.time_slice	= sched_rr_timeslice;
	p->rt.on_rq		= 0;
	p->rt.on_list		= 0;

#ifdef CONFIG_PREEMPT_NOTIFIERS
	INIT_HLIST_HEAD(&p->preempt_notifiers);
#endif

#ifdef CONFIG_COMPACTION
	p->capture_control = NULL;
#endif
	init_numa_balancing(clone_flags, p);
#ifdef CONFIG_SMP
	p->wake_entry.u_flags = CSD_TYPE_TTWU;
#endif
}
本文为博主原创文章,欢迎转载 、传播 !
本文链接:https://blog.csdn.net/leesagacious/article/details/128450241

操作系统知识点整理(完整版)_coder_hacker的博客-爱代码爱编程_操作系统知识点

第一章 操作系统概述 1)一个完整的计算机系统是由硬件系统和软件系统两大部分组成 2)计算机软件是指程序和与程序相关的文档的集合 3)按功能可把软件分为“系统软件”和“应用软件”两部分 系统软件:操作系统语言处理程序,数据库管理系统 应用软件:各种管理软件,用于工程计算的软件包,辅助设计软件 4)通常把未配置任何软件的计算机称为“裸机” 5)

linux操作系统基础_c.的博客-爱代码爱编程_linux操作系统

文章目录 Linux简介Linux介绍Linux特点CentOSLinux目录结构Linux常用命令Linux命令的分类操作文件或目录常用命令常用命令备份压缩命令gzip命令bzip2命令tar命令关机/重启命令学习

操作系统基础知识复习总结_loserchen.的博客-爱代码爱编程_操作系统

操作系统 操作系统概述 操作系统作用 存储管理 2. 处理机管理 3. 设备管理 4. 文件管理 5. 用户接口 操作系统的定义 是管理和控制计算机系统中各种硬件和软件资源、合理地组织计算机工作流程的系

操作系统_想追求完美的梦的博客-爱代码爱编程

计算机系统由硬件子系统和软件子系统组成硬件系统主要由中央处理器,主存储器,辅助存储器,输入/输出设备组成操作使用者认为操作系统是一组命令的集合,程序设计人员认为操作系统是一组功能调用程序的集合,一般认为,操作系统是一种管理计算机资源 ,控制程序执行,改善人机界面和为其他软件提供支持的系统软件。操作系统主要的设计原则:使用方便,高效工作操作系统分为:批处理操

【系统架构设计师】第一章:操作系统(1.1.1---1.1.2)操作系统的分类和结构-爱代码爱编程

好久不见了。最近由于忙着期末考试,所以一直没更新帖子,最近考完了,我又回来了。 很久不动笔了,突然很手痒,但是又一直在纠结写什么。 原计划要写kali的从零开始的教程,不过仔细想想其实那个并没有系统架构师的专注力大,因为这个是我的一个目前的目标。 你们知道的,我今年大二,下个学期会特别忙,有七八场ctf和awd,线上线下的都有,这就意味着我基本整个学

操作系统复习题最全(复习看它就够了!!!!!-爱代码爱编程

目录     PTA习题总结 习题一 习题二 习题三 习题四 习题五 习题六 习题七 习题八   PTA习题总结 (非常主观的针对了当时我个人的情况) 习题一 操作系统: 操作系统是位于硬件层之上,所有系统软件层之下的一个系统软件  配置在计算机硬件上的第一层软件

数据结构,计算机网络,数据库,计算机组成原理,操作系统有哪些好的网课值得推荐?-爱代码爱编程

大家好,我是小林哥。 作为自学CS过来的老学长,看过中国mooc、b站、网易云课堂很多视频,期间踩了不少坑,这次掏心掏肺前来跟分享下,网上的资源是免费的,但是找到质量好的是需要时间成本的! 数据结构,计算机网络,数据库,计算机组成原理,操作系统这些在大学期间一定要掌握好来,因为现在互联网大厂面试都爱考察这些内容,一句话,计算机基础,yyds! 可能大

有什么优质的计算机专业书籍?操作系统、计算机网络、计算机组成、数据结构、数据库.....-爱代码爱编程

大家好,我是小林哥。 平日里,大家都喊程序员加班多很辛苦,动不动就掉头发,但干的还是很香的,毕竟大多数公司钱还是给的很到位的,今年毕业应届生的我见到好多动不动就月薪 20K~30K 的,真让人两眼泪酸酸,当然这离不开他们大学期间的努力。 讲真,没什么家庭背景的人,选择当程序员确实是比较好的选择了,原因有二: 首先,当今互联网、AI 人工智能、大数据等

操作系统学习笔记:操作系统基础知识-爱代码爱编程

操作系统的概念、功能和目标 概念(定义) 首先来一张图来看看计算机系统的层次结构: 可以看到的是,操作系统扮演这一个连接硬件和软件、用户的角色。 由此可以得出操作系统的定义: 操作系统(Operating System, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的