Hero Image
「OS」操作系统之基础

1.操作系统概述 什么是操作系统? 操作系统就是组织所有的硬件,为用户程序提供调用接口的代码。是计算机硬件与应用之间的一层软件。封装了对硬件调用的实现,以及进程的管理。 硬件管理分类: CPU管理、内存管理、终端管理、磁盘管理、文件管理 网络管理、电源管理、多核管理 计算机硬件组成如图 我们学习一门编程语言,最先学习的就是打印“Hello World”。 计算机把代码加载到内存,通过PCI总线将数据写入显存地址,图形控制器将数据显示到面板。 对操作系统的学习需要掌握以下几点 系统调用: 使用显示器 print; 使用CPU:fork; 使用文件: open、read 一段文字是如何写到磁盘上的 成为掌握计算机关键技术的工程师,而不是仅仅调用API的工程师。 Lab1: 扩展线程 实现线程调度 Lab2: 实现系统调用 将整个接口剥掉,添加 Lab3: 实现虚存管理 扩展实现内存管理 Lab4: 扩展文件系统 扩展实现一个文件管理 知名计算机高校 CMU Carnegie Mellon University: 卡内基·梅隆大学 MIT Massachusetts Institute of Technology: 麻省理工学院 Leland Stanford Junior University 斯坦福大学 “Learn OS concepts by coding them!!!” 2. 操作系统引导 从打开电源开始,操作系统做了什么? 计算机怎么工作的 不要总等着别人告诉你答案,尽量自己去寻找 从知识和常识出发进行推理,思索 图灵机-> 通用图灵机 前缀表达式 后缀表达式 自动机 PC program counter 取指执行 、

Hero Image
「TSDB」时序数据&时序数据库简介

什么是时序数据? 时序数据的应用场景和特征? 时序数据库? 时序数据 时序数据,就是与时间强相关度的一系列数据。关注的是某一时刻的数据值,而不是最终的数据。是一个过程而不是一个结果。时序数据描述的是一个数据(指标)在时间维度上的变化。例如: 股票K线、环境监测。 时序数据的特征: 数据以一定的时间间隔产生,生产速率稳定。 写入多,查询少 时序数据不允许更新 时序数据主要是按时间范围查询 时序数据库 传统的数据库并不适合存储时序数据,针对时序数据的特征,时序数据库的基本要求如下: 支持高并发、高吞吐量的写入 支持海量数据存储 高可用(时序数据在互联网公司常用作报警数据源) 支持复杂的多维度的查询 易于横向扩展 常见的时序数据库 时序数据基本概念 一条时序数据是由多个DataPoint构成的。每个DataPoint包含以下几个方面 metric: 一般也叫metric name,是时序数据的指标名 tags: 一个或者多个tag组合,用户描述metric的不同维度。每个Tag由tagk&tagv组成。例如:一个请求的来源 host=10.20.178.23,dc=cn。tags标明数据的维度。 value: 表示对应的数值。例如:请求的latency 或者qps等。 timestamp: 时序数据的具体时间,可以是秒级或者毫秒级别的Unix时间戳。 例如: JVM_Heap_Memory_Usage_MB{host=127.0.0.1, instanceId=jvm01} Downsampling