【Java基础学习打卡04】计算机操作系统

news2024/11/26 14:31:26

目录

  • 引言
  • 一、操作系统基本概念
  • 二、Windows操作系统
  • 三、进程与线程
    • 1.进程
    • 2.线程
  • 四、CPU与内存
  • 总结


引言

了解操作系统基本概念,熟悉Windows操作系统,理解进程与线程概念,并知晓CPU与内存如何工作。


一、操作系统基本概念

计算机操作系统(Operating System,简称OS) 是一种控制计算机硬件和软件资源的程序,它作为系统的核心协调和管理系统的各个部分,为上层的应用程序提供服务,是计算机系统中最基本、最重要的软件之一。

操作系统的主要功能包括:

  • 管理计算机硬件资源,包括处理器、内存、I/O设备等,协调它们的使用,提高系统的性能和可靠性。
  • 提供应用程序和用户的界面,实现输入输出的控制和管理。
  • 提供文件管理和存储管理功能,管理存储在磁盘、光盘、U盘等外部介质上的文件,并提供对它的读写、传输、共享等功能。
  • 进行进程管理和线程管理,使得计算机可以同时运行多个程序,提高系统的并发性和响应性。

操作系统可以分为不同类型,包括 Windows、Linux、Unix、macOS 等。

每种操作系统都有自己的特点和优缺点,可根据不同应用场景选择合适的操作系统。操作系统的发展,推动了计算机软件和硬件的发展和创新,极大地推动了计算机技术的进步。

二、Windows操作系统

Windows 操作系统是一个由微软公司开发和发布的操作系统系列。它可以运行在桌面电脑、笔记本电脑、平板电脑、移动手机和服务器等不同的设备上。

最常见的包括 Windows11Windows 10、Windows 8、Windows 7 和 Windows XP。

在这里插入图片描述

三、进程与线程

1.进程

计算机进程(Process) 是指正在执行的程序在计算机中的一个实例。一个进程可以包含一个或多个线程,可以在计算机中同时运行多个进程,每个进程都有自己的内存空间、指令指针、堆栈和资源(如打开的文件等)。

在计算机中,每个进程都有一个唯一的进程标识符(Process Identifier,PID),用于区分不同的进程。 操作系统负责管理进程,为进程分配系统资源,如内存、CPU 时间、磁盘空间等。

在这里插入图片描述

进程可以分为前台进程和后台进程。前台进程是指用户可见的进程,可以与用户交互,如图形化界面应用程序,后台进程是指运行于后台并不需要用户干预的进程,如服务和守护进程。

进程具有一定的独立性和隔离性,进程之间不能直接访问彼此的资源,需要通过操作系统提供的机制沟通和协作。

2.线程

计算机线程(Thread) 是计算机操作系统中可独立调度和执行的最小工作单元,通常被称为轻量级进程(Lightweight Process)。每个线程都有单独的执行栈和程序计数器,可以独立执行,但它们共享进程的资源(如内存、文件、I/O 设备等)。

与进程相比,线程的创建、撤销和切换消耗的系统资源较少,可以更高效地实现并发编程,提高程序的性能和响应性。

在这里插入图片描述

四、CPU与内存

CPU和内存 是计算机中两个非常重要的组件,它们协调工作实现计算机的正常运行。CPU 是计算机中的中央处理器,负责执行指令,计算并处理数据;内存是计算机的数据存储设备,存储正在运行的程序、数据和指令。

在这里插入图片描述

当一台计算机上的应用程序需要运行时,它首先将程序和相关数据读入内存中,CPU 然后从内存中读取程序和数据,执行计算和处理操作。在执行过程中,CPU 会根据需要不断地向内存请求数据,内存会相应地将数据读取到 CPU 寄存器中,完成计算和处理后,CPU再将处理结果写回内存。

在内存中,数据通常是按照字节的顺序来存储的,每个数据单元都有一个地址,CPU 访问数据时需要指定其地址。为了加快 CPU 访问内存的速度,现代计算机通常会采用高速缓存(Cache)来提高 CPU 对内存的访问效率,将频繁使用的数据和指令缓存到 CPU 内部,减少对内存的访问。

操作系统负责管理内存和分配内存资源给进程和应用程序,以确保内存能够有效地被利用,避免内存的浪费和碎片化。操作系统也负责协调不同进程的内存使用,避免进程之间的内存冲突和干扰。

总之,CPU和内存之间的协作相当于一条“高速公路”,数据在这条“高速公路”上快速地传递和交互,以完成各种计算和处理任务,保证计算机的正常运行。有一个高效、及时的CPU与内存协作对于计算机性能和严谨性的提升至关重要。


总结

重点是理解进程与线程,知晓CPU和内存之间如何协作。

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

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

相关文章

使用Scala集成开发环境

一、搭建Scala的IntelliJ IDEA开发环境 (一)启动IDEA (二)安装Scala插件 启动IDEA,在欢迎界面中选择Configure→Plugins命令 在上方的搜索框中搜索scala关键字 单击绿色的【Install】按钮,安装完毕&am…

Ubuntu20.04 + 3090 安装nvidia驱动,附加解决重启黑屏卡在 /dev/***: clean, **files,***blocks的问题

目录 准备禁用nouveau解决黑屏问题并安装驱动参考 准备 首先需要知道当前电脑/服务器的显卡型号,这个自行查找自己电脑配置 查找显卡对应的驱动版本 通过命令ubuntu-drivers devices查看当前设备所支持的驱动,带有recommended的驱动为推荐安装的版本 不…

【K8S 从0到1实战】Kubernetes一主多从部署实战指南

目录 前言前置准备安装虚拟机关闭防火墙禁用 SELinux关闭 Swap 分区时区设置和时间同步主机名和域名解析配置转发 IPv4 并让 iptables 看到桥接流量 Docker 安装cri-docker 安装Kubernetes 部署配置 Kubernetes 镜像源Kubernetes 组件安装Master 节点初始化Node 节点加入集群…

基于Ti_AWR2243级联板的发射端波束形成(相控阵)的实践

说明 Ti的级联板功能十分强大,用这块板子做TDM(时分)的发射以及TDM发射模式下的数据处理可能更为大家所熟知,但其实因为AWR2243芯片在每个发射链路上有6bit的移相器,再加上板子上有9个发射天线是排布在同一个水平线上的,所以也可以…

万物的算法日记|第二天

笔者自述: 一直有一个声音也一直能听到身边的大佬经常说,要把算法学习搞好,一定要重视平时的算法学习,虽然每天也在学算法,但是感觉自己一直在假装努力表面功夫骗了自己,没有规划好自己的算法学习和总结&am…

JavaSE进阶——玩转IO流

文章目录 前言一、File类介绍1、概念引入2、实际应用2.1 操作文件2.2 操作文件夹 二、IO流介绍三、字符流1、读文件1.1 一次读一个1.2 一次读多个,使用char数组去装 2、写文件2.1 一次写一个2.2 一次写完,使用字符数组 3、文件复制3.1 综合应用3.2 使用缓…

论文解读:ExamPle:用于预测植物小分泌肽的可解释的深度学习框架

ExamPle: explainable deep learning framework for the prediction of plant small secreted peptides 期刊:Bioinformatics 影响因子:6.931 中科院分区:小类数学与计算生物2区 出版日期:2023年3月10日 Github:https://gith…

Seata客户端的启动过程 学习记录

Seata客户端的启动过程 1.自动装配4个配置类 将在SpringBoot启动时往容器中添加4个类 1. 自动配置类 SeataAutoConfiguration SeataAutoConfiguration将会往容器中添加两个bean failureHandler 事务处理失败执行器globalTransactionScanner failureHandler failureHandle…

03 表达关系的术语

文章目录 表达关系的术语关联关联的语义表达(6点) 泛化细化(也称为实现)依赖例题 UML 基本关系的一般用法① 模型化简单依赖②模型化单继承③模型化结构关系例题 表达关系的术语 关联 定义:关联是类目之间的结构关系,描述了一组具有相同结构、相同语义…

【MySQL数据库一】MySQL数据库初体验

MySQL数据库初体验 1.数据库基本概念1.1 数据Data1.2 表1.3 数据库1.4 数据库管理系统1.5 数据库系统 2.数据库的发展3.主流的数据库介绍3.1 SQL Server(微软公司产品)3.2 Oracle (甲骨文公司产品)3.3 DB2(IBM公司产品…

安卓高通机型的基带移植 修改 编译的相关 增加信号 支持5G等【二】

安卓高通机型的基带移植 修改 编译的相关 增加信号 支持5G等【一】 前面分享了这篇帖子,很多友友希望更新下新机型的基带替换方法。今天对其中做一些补充说明。由于安卓机型跨版本幅度较大。有的机型从出厂安卓8有可能官方目前已经更新到安卓12 13等等。所以任何的教…

每天五分钟机器学习:如何确定梯度下降中的学习率?

本文重点 学习率是梯度下降算法中的一个重要参数,它控制着每次迭代中参数的更新幅度,因此学习率的大小直接影响着算法的收敛速度和精度。在实际应用中,如何选择合适的学习率是一个非常重要的问题。 手动调整法 最简单的方法是手动调整学习率。我们可以根据经验或者试错的…

sealos 五年磨一剑——云操作系统正式发布

这是计划的一部分 这是一个宏伟的计划,漫长且有趣。。。 2018 年的一个晚上,我写下了 sealos 第一行代码,当时仓库命名 “kubeinit”,后一想格局太小,我不可能只做一个安装 kubernetes 的事,安装只是计划…

不知道测试什么?这些是你需要知道的软件测试类型和常识

有多少软件测试类型呢? 我们作为测试人员了解很多种不同的软件测试类型,例如功能测试(Functional Test)、非功能测试、自动测试、敏捷测试、以及它们的各种子类型. 尽管在我们的测试过程中会接触很多种测试类型, 或者听说过某些测试类型,但是很少人敢说…

小姐姐们,一起学数据分析

💖 亲爱的女生们,听我说!数据分析,给你的未来注入浪漫与激情!💖 嗨,小姐姐们👭, 我想和你们分享一个令人兴奋的话题——数据分析!或许你们会觉…

Liunx系统重修

Liunx中以“树”结构的形式来管理文件和文件夹的!

ISP下载原理分析

STM32的启动方式,系统存储器启动就是通过ISP下载 ISP简介 ISP下载是指可以通过串行外设,直接将程序下载Flash中,然后自动运行程序的启动方式。 ISP的时候需要用到bootloder(自举程序),bootloader存储在STM32内部的自举ROM存储器…

webpack踩坑

因为电脑重新装了系统 所以很多环境都需要配置 1.首先去node.js官网下载了node,node下载后对应的npm版本也会自动下载好 2.想要成功跑通项目,还需要下载webpack 全局安装webpack npm -i webpack -Dnpm install webpack-cli -g但一直在报错 查看webpac…

基于Java毕业生就业信息统计系统设计实现(源码+lw+部署文档+讲解等)

博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精…

2023互联网Java高级工程师1080道面试题(附答案)分享

Java 面试八股文有必要背吗? 我的回答是:很有必要。你可以讨厌这种模式,但你一定要去背,因为不背你就进不了大厂。现如今,Java 面试的本质就是八股文,把八股文面试题背好,面试才有可能表现好。…