操作系统常考知识点总结(1)

1.什么是进程(process)和线程(thread)?有何区别?

1)定义

进程是系统进行资源分配和调度的基本单位,线程是进程的一个实体,是cpu调度和分派的基本单位,是比进程更小的独立运行的基本单位,线程自己本身不拥有系统资源,只拥有运行中必不可少的资源(如程序计数器,一组寄存器和栈),与同属一个进程的其他线程共享资源。

2)关系

一个线程可以创建和销毁另一个线程,同一个进程中的多个线程之间可以并发执行。

3)区别

 进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求同时进行并且又要共享某些变量的并发操作,只能用线程,不能用进程。

a) 简而言之,一个程序至少有一个进程,一个进程至少有一个线程.

b) 线程的划分尺度小于进程,使得多线程程序的并发性高。

c) 另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。

d线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。

e) 从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。这就是进程和线程的重要区别。

 

 

转载于:https://www.cnblogs.com/slwd/p/9030266.html

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

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

相关文章

jQuery上传插件Uploadify使用Demo、本地上传(ssm框架下)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 效果&#xff1a; 1. jar包导入&#xff1a; <!-- 文件上传组件 --><dependency><groupId>commons-fileupload</g…

P4313 文理分科 网络流

其实也就卡了卡常&#xff0c;&#xff0c;&#xff0c; 先考虑没有same_art和same_science 。 起点用art的流量连向每个点&#xff0c;该点再用science的流量连向终点&#xff0c;断开哪边相当于少了哪边收益。 先全部收益加起来&#xff0c;再减去最小割即可。 那有same这些情…

23--有效的括号

文章目录1.题目详情2.代码详情1.题目详情 给定一个只包括 ‘(’&#xff0c;’)’&#xff0c;’{’&#xff0c;’}’&#xff0c;’[’&#xff0c;’]’ 的字符串&#xff0c;判断字符串是否有效。有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。 左括号…

11 步教你选择最稳定的 MySQL 版本

MySQL开源数据库有多个重要分支&#xff0c;目前拥有的分支分别为&#xff1a;MySQL Cluster、MySQL 5.1、MySQL 5.5、MySQL 6.2。每个分支都有着同样的的MySQL数据库版本&#xff0c;分别为&#xff1a;Development版本、Alpha版本、Beta版本、RC版本和GA版本。Development版本…

【RabbitMQ】6、rabbitmq生产者的消息确认

2019独角兽企业重金招聘Python工程师标准>>> 通过Publisher Confirms and Returns机制&#xff0c;生产者可以判断消息是否发送到了exchange及queue&#xff0c;而通过消费者确认机制&#xff0c;Rabbitmq可以决定是否重发消息给消费者&#xff0c;以保证消息被处理…

泛型方法

java泛型方法简单介绍

修改jquery文件上传插件uploadify的英文为中文

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 效果&#xff1a; 对于这种样式的问题&#xff0c;我都是简单粗爆的解决&#xff1a; 找到uploadify的js文件&#xff0c;通常不是js&…

24--反转字符串中的单词 III

文章目录1.问题描述2. 代码详情1.问题描述 给定一个字符串&#xff0c;你需要反转字符串中每个单词的字符顺序&#xff0c;同时仍保留空格和单词的初始顺序。 示例 1: 输入: “Let’s take LeetCode contest” 输出: “s’teL ekat edoCteeL tsetnoc” 注意&#xff1a;在字…

poj2976 Dropping tests

01分数规划裸题 为毛二分一定要打成rmid这么恶心啊 #include<cstdio> #include<iostream> #include<cstring> #include<cstdlib> #include<algorithm> #include<cmath> using namespace std; typedef long long LL;int n,k; double a[1100…

Apache Cassandra 1.1.0 稳定版发布

Apache Cassandra团队今天正式推出了1.1分支的首个稳定版1.1.0版本。Apache Cassandra是一套开源的分布式 NoSQL 数据库系统&#xff0c;遵循 Apache Lience 2 协议。它最初由 Facebook 开发&#xff0c;用于储存收件箱等简单格式数据&#xff0c;集 Google BigTable 的数据模型…

如何仅花25美元并在3小时内完成ImageNet训练?

译者 | 核子可乐编辑 | Debra、VincentAI 前线导读&#xff1a;在斯坦福大学建立的项目 DAWNBench 竞赛中&#xff0c;CIFAR10 与 ImageNet 的表现引起了人们的关注&#xff0c;在目标基本一致的前提下&#xff0c;两者的准确度分别达 94% 和 93%&#xff0c;在成本和速度上均有…

java中什么是上下文

所谓上下文&#xff0c;它是用来存储系统的一些初始化信息&#xff0c;例如在jboss中通过配置文件指定了数据源&#xff0c;那么在jboss启动的时候就把这个文件的相关信息加载到上下文中&#xff0c;于是在我们使用这个数据源的时候&#xff0c;就需要先获得系统的上下文&#…

jquery文件上传插件uploadify 讲解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1.名词解释&#xff1a; tracker服务器&#xff1a;中文叫做跟踪器&#xff0c;主要做调度工作&#xff0c;在访问上起负载均衡的作用。&…

POJ 1651 Multiplication Puzzle(类似矩阵连乘 区间dp)

传送门&#xff1a;http://poj.org/problem?id1651 Multiplication PuzzleTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 13109 Accepted: 8034Description The multiplication puzzle is played with a row of cards, each containing a single positive integ…

25--最后一个单词的长度

文章目录1.问题描述2.代码详情1.问题描述 给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s&#xff0c;返回其最后一个单词的长度。如果字符串从左向右滚动显示&#xff0c;那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词&#xff0c;请返回 0 。 说明&…

MySQL 企业监控器 2.3.10 正式版发布

Oracle于近日发布了 MySQL 企业监控器 2.3.10 正式版。 MySQL企业监控器主要用于实施对数据库进行监控和管理。通过它&#xff0c;数据库管理员不但可以获得高级的数据复制和数据库监控功能&#xff0c;同时还可以简化安装流程。而且&#xff0c;无论是对于MySQL企业版&#xf…

Docker 跨主机网络方案分析

PS&#xff1a;文章首发公众号&#xff0c;欢迎大家关注我的公众号&#xff1a;aCloudDeveloper&#xff0c;专注技术分享&#xff0c;努力打造干货分享平台&#xff0c;二维码在文末可以扫&#xff0c;谢谢大家。 上篇文章介绍了容器网络的单主机网络&#xff0c;本文将进一步…

java中为什么使用上转型和下转型

为什么使用上转型&#xff1f;因为当一个父类有很多子类&#xff0c;子类都重写了父类的方法并加以使用。这时候&#xff0c;如果要在之前代码让你用其他子类来实现&#xff0c;就变得很简单&#xff0c;只需要把A a new B();换成A a new C();&#xff08;假设B和C都继承了A&…

session和cache的区别

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 以前实现数据的缓存有很多种方法&#xff0c;有客户端的Cookie&#xff0c;有服务器端的Session和Application。 其中Cookie是保存在客…