热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

硬盘的工作原理与操作系统以及计算机语言的分类

硬盘的工作原理机械硬盘机械手臂用来读写数据磁道存储数据扇区一个扇区,规定了容量为512kb。电脑分C盘与D盘为了减少IO操作,减少数据寻找的时间,C盘的文件不会在D盘里寻找

硬盘的工作原理

机械硬盘

机械手臂

用来读写数据

磁道

存储数据

扇区

一个扇区,规定了容量为512kb。电脑分C盘与D盘为了减少IO操作,减少数据寻找的时间,C盘的文件不会在D盘里寻找。

平均寻道时间

工业限制,平均寻道时间为5ms

平均延迟时间

最差的情况下,磁道转动一圈才找到数据,最快直接找到,最慢8ms最快0ms,平均4ms。

寻找数据的时间

寻找数据的时间=平均寻道时间+平均延迟时间=5+4=9ms

缺点

找寻数据的时间慢,受工业限制平均寻道时间及平均延迟时间

固态硬盘

解决机械硬盘寻找数据慢的缺点

操作系统

开机的时候会发现少掉一部分内存

文件是什么

文件是某一个东西提供的虚拟单位,文件写入“我很帅”,某个东西会将它转换为0和1,然后写入硬盘

程序的启动

我们用鼠标双击qq,这个东西将指令转换为0和1组成的指令,将0和1组成的指令发送给CPU……

这个东西

这个东西就是CPU

为什么要有操作系统

操作系统帮助我们控制硬件

计算机的三大组成
  1. 硬件
  2. 操作系统
  3. 应用程序

早期我们写一个应用程序,必须得自己写一个操作系统,

现在,微软,苹果等厂商会写好一个操作系统。

最底层:硬件

存储数据,发送命令

中间层:操作系统

控制底层硬件,接收应用程序与用户的指令

最上层:应用程序

帮人干活,实现某个功能

编程语言的分类

编程语言:人与计算机之间交流的介质

机器语言

计算机只能识别0和1,为了与计算机交流,我们要学会0和1

优点:执行效率非常快

缺点:普通人根本写不了这种代码,开发效率非常低

汇编语言

也是直接与计算机沟通,汇编语言将一串二进制码转变为了英文单词

优点(与机器语言比较):开发效率高

缺点(与机器语言比较):执行效率慢

高级语言

类似谷歌翻译(编译型语言)

把写完后的代码一次性写完,并且可以保留结果,下次可以直接使用。

优点(汇编语言):开发效率高

缺点(汇编语言):执行效率慢(需要翻译过程)

类似同声传译(解释型语言)

我说一句话,翻译就翻译一句

print ('wohenshuai')
#翻译
if i == 'handsome':
#翻译
   print ('handsome')
#翻译

优点(编译型语言):开发效率高

缺点(编译型语言):执行效率低

瓶颈效应

如果你开发一个软件

你开发一个软件,就是需要实现某个功能,比如视频软件需要联网。但是由于受网速的限制,下载两个软件之间的延迟为1ms。高级语言延迟为0.1ms,机器语言执行效率0.000000001ms,使用高级语言。

你开发一个操作系统,假设使用汇编语言需要10年,使用高级需要8年。操作系统使用20年。操作系统更在乎用户的体验,用户体验就是速度快。而你打开一个应用程序,你是不是无法直接操控硬件,需要通过操作系统,操作系统控制硬件越快越好。使用机器语言或者汇编语言。

你以后要干的是什么,应用程序,你写的应用程序是不是都需要联网,只要联网就会受到网速的限制,开发效率越快的语言越好。使用解释型的,python。

python,简单,他有大量成型库,也是为什么python能够做少儿编程/加入高考的。使用的人会越来越多,库也越来越多。

补充:源码就是create_file() 的实现的源代码

import 导入
import os(控制操作系统的)
os.create_file() 

而Java则要写很多行程序来控制,例如下

uhdxiosajdpfk
akucfuajd
fiafjioafj
fjafmakf

推荐阅读
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文详细介绍了macOS系统的核心组件,包括如何管理其安全特性——系统完整性保护(SIP),并探讨了不同版本的更新亮点。对于使用macOS系统的用户来说,了解这些信息有助于更好地管理和优化系统性能。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 深入解析JVM垃圾收集器
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践》第二版,详细探讨了JVM中不同类型的垃圾收集器及其工作原理。通过介绍各种垃圾收集器的特性和应用场景,帮助读者更好地理解和优化JVM内存管理。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • PyCharm中配置Pylint静态代码分析工具
    本文详细介绍如何在PyCharm中配置和使用Pylint,帮助开发者进行静态代码检查,确保代码符合PEP8规范,提高代码质量。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文详细探讨了Java中的24种设计模式及其应用,并介绍了七大面向对象设计原则。通过创建型、结构型和行为型模式的分类,帮助开发者更好地理解和应用这些模式,提升代码质量和可维护性。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
author-avatar
手机用户2502926887
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有