一、多任务原理
在现代的操作系统中(Windows、linux、Android、iOS,mac等)都支持多任务。
在操作系统中多任务包括多线程和多进程,表现方式,并发,并行,串行(多个任务依次执行不能同时执行)
并发:操作系统让多个任务交替执行,比如一台主机同时开了qq、微信、脉脉等,qq执行2ns、微信执行2ns、脉脉执行,qq、微信、脉脉。。。由于CPU的运行速度非常快,所以从宏观上我们会感觉到这些任务是在同时执行
并行,需要多cpu的支持(如果是多核cpu或者多个cpu可以支持并行):把多个任务执行在多个cpu上,不需要各个任务之间取抢占cpu资源
二、进程
对于一个操作系统而言,一个程序运行起来就会被创建出一个到多进程(包含进程id,进程代码,进程资源),一个进程在运行的过程中操作系统会给它分配相应的资源(包括内存资源、I/O资源),然后通过一定的算法分配到指定任务队列让它和其他进程或线程并发执行
【注意】进程是操作系统分配资源(内存资源和I/O资源)的基本单位
void func1(int a){
int b;
char c;
static int a;
return a+b;
}
int w;
int main(){
int a;
float b;
char c;
float * p;
func1(a)
p = malloc(1000)
free(p)
a = 10
p = "12341254"
return 0
}








网友评论