The Swift Programming Language读书笔记学习笔记 第25页 本页主要说在swift语言里能够使用分号,但分号不作为每条swift语言语句的结尾 而是间隔写在一行的多条swift语句. eg: var x = 194 var y = 184 var z = 7311 上边三行swift语句可写成一行 var x = 194, y = 184, z = 7311 在本页还提及了swift里的int数据,这和其它语言里int整形数据没啥差别. 特别之处1)提及了UInt8…
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以及理解的经历,给各位想更深入理解的人分享一些个人的资料 硬件基础 首先,我们无需掌握大量的底层计算机系统结构设计知识的细节,如果大家对于计算机系统结构非常感兴趣,那么我非常推荐大家搜一下 CSE 502 Computer Architecture 的课件,我看了这门课的 CPU 和 缓存章节,受益匪…
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以及理解的经历,给各位想更深入理解的人分享一些个人的资料 硬件基础 处理器和线程(processors and threads) 多处理器(multiprocessor)包括多个硬件处理器,每个都能执行一个顺序程序.当讨论多处理器架构的时候,基本的时间单位是指令周期(cycle):即处理器提取和执行一…
本系列是 The art of multipropcessor programming 的读书笔记,在原版图书的基础上,结合 OpenJDK 11 以上的版本的代码进行理解和实现.并根据个人的查资料以及理解的经历,给各位想更深入理解的人分享一些个人的资料 自旋锁与争用 3. 队列锁 之前实现的基于回退的锁,除了通用性以外,还有如下两个问题: CPU 高速缓存一致性流量:虽然由于回退存在,所以流量比 TASLock 要小,但是多线程访问锁的状态还是有一定因为缓存一致性导致的流量消耗的. 可能降低访…
这份笔记是我2013年下半年以来读“The Art of Multiprocessor Programming”这本书的读书笔记.目前有关共享内存并发同步相关的书籍并不多,但是学术文献却不少,跨越的时间范围也非常长,说明人们一直在做出努力.这本书是这个领域的好书,作为一本好书,它总结了这个领域自发展以来的大量重要成果,介绍了共享内存同步的基本理论,并介绍了大量并发算法和数据结构(主要是无锁算法),包括并发队列.栈.链表.计数器.排序网络.散列.跳表.优先队列等.更为重要的是,本书的作者之一Mau…
笔记前言: <Computer Organization and Design: The Hardware/Software Interface>,中文译名,<计算机组成与设计:硬件/软件接口>,是计算机组成原理的经典入门教材之一.节奏紧凑又不紧张,内容充实又不冗长,语言表述朴实易懂又不故作高深,是一本非常适合初次接触计算机组成原理的学生阅读的入门教材. 读书笔记系列博客是主要是记录我学习和阅读中的心得和体会.既然是读书笔记,肯定不会面面俱到,那就成了抄书笔记了.所有笔记系列博客力…
认识CLR [<CLR via C#>读书笔记] <CLR via C#>读书笔记 什么是CLR CLR的基本概念 通用语言运行平台(Common Language Runtime,简称CLR)是微软为他们的.Net虚拟机所选用的名称.这是通用语言架构(简称CLI)的微软实现版本,它定义了一个代码运行的环境.CLR运行一种称为“通用中间语言”的字节码,这个是微软的通用中间语言实现版本. CLR运行在微软的视窗操作系统上.查看通用语言架构可以找到该规格的实现版本列表.其中有一些版…
<CLR via C#>读书笔记 什么是CLR CLR的基本概念 通用语言运行平台(Common Language Runtime,简称CLR)是微软为他们的.Net虚拟机所选用的名称.这是通用语言架构(简称CLI)的微软实现版本,它定义了一个代码运行的环境.CLR运行一种称为“通用中间语言”的字节码,这个是微软的通用中间语言实现版本. CLR运行在微软的视窗操作系统上.查看通用语言架构可以找到该规格的实现版本列表.其中有一些版本是运行在非Windows的操作系统中.(维基百科CLR) 以上定…
透视JAVA——反编译.修补和逆向工程技术 读书笔记 1. Java source is not compiled to binary machine code like C/C++ source is. 2. Because the bytecode does not represent the lowest-level machine language, the format of the code closely resembles the source code. 3.public…