Skip to content

Nature/abstraction

观点

本文标题"nature"的含义是"本质"。本文的观点是: 探寻问题的本质,对于本质上相同的问题,可以使用相同的技术来进行实现,使用相同的model来进行描述。

draft

在本质上相同的问题、追寻相同的目标、具备相同的结构,可以使用相同的技术、相同的思想、相同的概念、相同的algorithm;这就出现了同一个概念在不同层次、领域的相互借用;同一技术在不同层次、领域的相互借用;同一model可以使用于不同层次、领域;

NOTE: model

draft

同一思想/技术在computer science各个领域中的运用,与此相关的是: 一些model可以用于computer science的各个领域,比较典型的是consistency model;同一个概念在computer science的各个领域中被用不同的language来进行描述;

我是在阅读 https://en.wikipedia.org/wiki/Speculative_execution 时,其中的一段话 "This approach is employed in a variety of areas "给出的提示

draft

在不同的层级、范围都要考虑看似相同的问题,比如在distributed computing、DBMS中,都需要考虑原子性,这就要求建立模型,它们的实现方式是可以相互借鉴的。

Example

下面是一些example。

使用asynchronous programming来optimization

这是为了**追寻相同的目标**(optimization),而使用类似的技术(asynchronous programming)的例子。

asynchronous/non-blocking operation: 启动,不阻塞主调线程/main loop,下面是一些例子: 1) Redis中,fork一个process来处理copy entire data to file,在这种情况下,main loop并未被阻塞而是不断地运行,处理其他的request

2) CPU asynchronous operation: CPU对于耗时的instruction,并不阻塞主流程

3)

Atomicity/atomic概念

./Atomic进行了介绍。

Synchronization

层次 distributed system standalone instruction
distributed lock lock lock instruction
barrier barrier memory barrier
message communication IPC、inter-thread communication
共识