自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 资源 (16)
  • 收藏
  • 关注

转载 Ceph Jewel版本三副本写操作流程

__ReplicatedPG::register_on_commit() 注册on_committed回调处理函数, 对于op请求需要ack且此时没有向客户端发送过sent_disk,则创建MOSDOpReply消息且在消息上添加CEPH_OSD_FLAG_ACK和CEPH_OSD_FLAG_ONDISK标识后将MOSDOpReply消息发送给客户端。|__ReplicatedBackend::generate_subop() 创建MOSDRepOp消息类对象。

2023-06-29 10:36:27 190

原创 makefile的链接顺序-c/c++的静态库链接顺序

1.你有一个library或者是可执行文件,你可以这样查看他的依赖关系:readelf -d <> ldd工具2.查看某个. c文件引用了那些头文件 gcc -M :查看引用的全部头文件(包括系统头文件)gcc -MM :忽略系统头文件3.对于library的查找查找需要连接的符号名是从前向后找---即最后一个-l库文件最先调用;根据-L指定的路径顺序查找;不同 目录下的同名的库,只取第一个(从左向右:即依次调用,最后一个生效的是最后调用:即最左...

2021-06-10 21:25:03 1712 1

原创 趣味C代码,不用编译可以直接运行

把下面的文件,保存为easy_c.c文件,chmod赋予执行权限,就可以直接运行//usr/bin/gcc -o mainC "$0" && ./mainC ; rm mainC ; exit#include <stdio.h>int main(int argc, char* argv[]){ printf("hello, easy c\n"); if(argc > 1){ printf("argv[1]: %s\n...

2021-03-12 14:38:25 940

原创 elf文件链接两个so时候,同名函数在两个so里面都有

main.cc文件#include <iostream>using namespace std;extern int common_func(int a1, int a2);extern int old_func(int n);extern int new_func();int main() { cout << "hello" << endl; int n = 1; n = common_func(

2021-02-24 15:33:11 416

原创 利用脚本-一键导出段错误的函数反汇编

#!/bin/bashbin=$1func=$2function print_help() { echo "use: disassembly.sh <bin> <func | addr> 0x[offset]" echo " ex 1. disassembly.sh a.out main 1c ---> number 1c means 0x1c" echo " ex 2. disassembly.

2020-12-28 10:31:56 85

转载 再过半小时,你就能明白kafka的工作原理了

为什么需要消息队列  周末无聊刷着手机,某宝网APP突然蹦出来一条消息“为了回馈老客户,女朋友买一送一,活动仅限今天!”。买一送一还有这种好事,那我可不能错过!忍不住立马点了去。于是选了两个最新款,下单、支付一气呵成!满足的躺在床上,想着马上有女朋友了,竟然幸福的失眠了……  第二天正常上着班,突然接到快递小哥的电话:  小哥:“你是xx吗?你的女朋友到了,我现在在你楼下,你来拿一下吧!”。  我:“这……我在上班呢,可以晚上送过来吗?“。  小哥:“晚上可不行哦,晚上我也下班了呢!”。  于

2020-09-26 10:12:51 237

原创 linux下so动态库调用主程序函数

linux下动态库今天无意间发现在linux下share object(dynamic library)中的函数竟然可以不通过回调的方式直接访问主程序中的函数,瞬间颠覆以前对于动态库的观念.1、如代码所示libhi.so中有一个函数hello, 主程序main中有一个函数hi_out, 那么在main中调用libhi.so中的hello时,hello会自动找到main程序中的hi_output函数地址, 然后进行调用.=================hi.c 编译为 libhi.so=...

2020-08-27 10:06:46 3862 1

转载 UML中的几种关系(依赖,关联,泛化,实现)

关于设计模式的总结没有落实到代码上,而且设计模式自己确实动手实现的非常少。所以在这一周里,除了看网站开发的视频,着手开始对设计模式进行实现以下。设计模式非常经典,每次看都有不同的收获,写一下自己的收获吧,请大家指正。在实现设计模式之前,首先来复习以下UML中的五种关系图<1>依赖依赖关系用虚线加箭头表示,如图所示:上图表示:Animal类依赖于Water类(动物依赖于水)。依赖是类的五种关系中耦合最小的一种关系。因为依赖关系在生成代码的时候,这两个关系类都不会增加属性..

2020-08-21 20:59:19 4659 1

转载 理解Linux的硬链接与软链接__超详细_原理

理解 Linux 的硬链接与软链接Linux 的文件与目录现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux 保持了这一特性。为了便于文件的管理,Linux 还引入了目录(有时亦被称为文件夹)这一概念。目录使文件.

2020-08-01 15:00:42 756 2

转载 Epoll的本质(内部实现原理)

本文主体转自https://zhuanlan.zhihu.com/p/63179839,罗培羽:如果这篇文章说不清epoll的本质,那就过来掐死我吧! 加上了自己的理解和批注从事服务端开发,少不了要接触网络编程。epoll作为linux下高性能网络服务器的必备技术至关重要,nginx、redis、skynet和大部分游戏服务器都使用到这一多路复用技术。因为epoll的重要性,不少游戏公司(如某某九九)在招聘服务端同学时,可能会问及epoll相关的问题。比如epoll和select的区别是什么?epo

2020-07-21 14:24:31 256 1

转载 Linux的进程线程及调度

https://www.cnblogs.com/leisure_chn/p/10393707.htmlLinux的进程线程及调度本文为宋宝华《Linux的进程、线程以及调度》学习笔记。1 进程概念1.1 进程与线程的定义操作系统中的经典定义:进程:资源分配单位。线程:调度单位。操作系统中用PCB(Process Control Block, 进程控制块)来描述进程。Linux中的PCB是task_struct结构体。1.2 进程生命周期1.2.1 进程状态R, TASK

2020-07-10 10:46:39 1497

转载 多核编程之 CPU Cache

Cache 简介Cache,即缓存。缓存能提升读取性能,其原理是用性能更好的存储介质存储一部分高频访问的内容,获得总体概率上的速度提升。在开发中,我们口中的缓存可以是一个变量,或者是 redis。在计算机 CPU 内部,CPU 往往指的是 CPU 的各级缓存。CPU Cache 原理缓存的工作原理是当 CPU 要读取一个数据时,首先从CPU缓存中查找,找到就立即读取并送给 CPU 处理;没有找到,就从速率相对较慢的内存中读取并送给 CPU 处理,同时把这个数据所在的数据块调入缓存..

2020-05-30 16:55:40 383

转载 CentOS 6 编译安装gcc 5.0+

CentOS6.5默认安装的gcc版本是4.4.7,而处于某些软件的编译需求,gcc版本要求在5.0以上,因此只能DIY了。1. 环境准备我自己本地配了个CentOS6.5的虚机,配置好yum源(方法参考:https://www.jianshu.com/p/422813bdd34c)。编译gcc之前,首先需要环境中已经安装一套gcc和g++yum install gccyu...

2020-04-10 15:42:45 1328

转载 C++ 模板偏特化-来自STL的思考

之前学习STL时接触过一段时间的模板,模板是C++泛型编程编程的基础STL从头到尾都是模板泛型编程,我觉得用的最巧妙的就是在traits萃取技巧时用到的模板偏特化先简要回顾一下模板吧,模板主要分为函数模板与类模板函数模板template<class T>T add(T a, T b) { return a + b;}int main(){ int a = 1, ...

2020-04-09 11:16:53 198 1

转载 C++ #define,typedef,using用法区别

C++ #define,typedef,using用法区别一.#define#define 是宏定义命令,宏定义就是将一个标识符定义为一个字符串,源程序中的该标识符均以指定的字符串来代替,是预编译命令,因此会在预编译阶段被执行1.无参宏定义无参宏的宏名后不带参数其定义的一般形式为:#define 标识符 字符串其中的“#”表示这是一条预处理命令。凡是以“#”开头的...

2019-11-27 11:38:45 391

转载 c++仿函数 functor

内容整理自国外C++教材  先考虑一个简单的例子:假设有一个vector<string>,你的任务是统计长度小于5的string的个数,如果使用count_if函数的话,你的代码可能长成这样:bool LengthIsLessThanFive(const string& str) { return str.length()<5; }int r...

2019-11-26 10:45:24 148

转载 int指令(软件中断指令__软件调试)__gdb调试中断断点原理

INT(软件中断指令)是CALL指令的一种特殊形式。call指令调用调用的子程序是用户程序的一部分,而INT指令调用的操作系统提供的子程序或者其他特殊的子程序。中断服务子程序和标准过程的最大区别是 汇编程序可以有任意个过程,中断服务子程序最多有256个过程、INT指令共有四中不同的格式:《1》 int n  n是中断号,这就允许用户程序调用256个中断服务子程序...

2019-11-07 17:11:03 2521

原创 c++中函数模板和类模板的 声明与定义 实现放在不同的文件

为什么 c++中函数模板和类模板的 声明与定义需要放到一起?一般来说,模板的声明和定义,都放在同一个头文件里,其它cpp需要用的时候包这个头文件。但是,将模板的声明与定义写在一起实在很不优雅。尝试用“传统”方法,及在.h文件里声明,在.cpp文件里定义,然后在main函数里包含.h头文件,这样会报链接错误。这是因为函数模板要被实例化后才能成为真正的函数,在使用函数模板的源文件...

2019-11-07 16:56:46 3834

转载 gcc选项-g与-rdynamic的异同

gcc选项-g与-rdynamic的异同gcc的-g,应该没有人不知道它是一个调试选项,因此在一般需要进行程序调试的场景下,我们都会加上该选项,并且根据调试工具的不同,还能直接选择更有针对性的说明,比如-ggdb。-g是一个编译选项,即在源代码编译的过程中起作用,让gcc把更多调试信息(也就包括符号信息)收集起来并将存放到最终的可执行文件内。相比-g选项,-rdynamic却...

2019-10-18 10:29:18 979

转载 C++面试题答案来了

原文链接:https://www.nowcoder.com/tutorial/93/a34ed23d58b84da3a707c70371f59c21链接:https://www.nowcoder.com/tutorial/93/a34ed23d58b84da3a707c70371f59c21来源:牛客网说一下static关键字的作用参考回答:1. 全局静态变量在全局变量...

2019-10-14 10:58:11 787

转载 c++工程师校招面试考点汇总(附面试题和答案)【持续更新】

作者:牛妹链接:https://www.nowcoder.com/discuss/164721来源:牛客网C++后台开发面试考点汇总以下不作为C++学习路径,只是汇总的校招C++后台开发面试考点(因为还有笔试考点,后面结合在一起给大家学习路径),后续会为大家更新10w+字数的C++校招面试题库,还有其他岗位的相关题库和资料,想要什么岗位的可以留言哦~本篇根据各个公司的面试问的问...

2019-10-14 10:48:06 2123

转载 ubuntu学习

一、 Ubuntu简介Ubuntu(乌班图)是一个基于Debian的以桌面应用为主的Linux操作系统,据说其名称来自非洲南部祖鲁语或科萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观。Ubuntu的目标在于为一般用户提供一个最新同时又相当稳定,主要以自由软件建构而成的操作系统。Ubuntu目前具有庞大的社区力量支持,用户可以方便地从社区获得...

2019-09-23 14:09:53 296

原创 ATT汇编与Intel汇编的区别,摘自《深入分析linux内核源码》一书

AT&T与Intel汇编语言的比较 我们知道,Linux是Unix家族的一员,尽管Linux的历史不长,但与其相关的很多事情都发源于Unix。就Linux所使用的386汇编语言而言,它也是起源于Unix。Unix最初是为PDP-11开发的,曾先后被移植到VAX及68000系列的处理器上,这些处理器上的汇编语言都采用的是AT&T的指令格式。当Unix被移植到i386时,自然也...

2019-09-23 13:50:28 300

原创 gdb调试带参数的程序_argv

例子:#include <stdio.h>int main(int argc,char *argv[]){ int i = argc; printf("argc:%d\n",i); for(i = 0;i < argc;i++) printf("argv[%d]:%s\n",i,argv[i]); return ...

2019-09-18 17:56:06 4634

转载 Linux中的GOT和PLT到底是个啥?

转自https://www.freebuf.com/articles/system/135685.html0×00 Intro本文以Ian Wienand的博客为蓝本,我在必要的地方予以增补、解释以及再实验,希望读者对PLT和GOT有一个初步的、相对完整的认识。0×01The Simplest Example原文的标题是“PLT and GOT – the key to ...

2019-08-22 19:24:02 826

原创 c++代码心得体会-关于c++11 完美转发 std::forward()

std::forward右值引用类型是独立于值的,一个右值引用参数作为函数的形参,在函数内部再转发该参数的时候它已经变成一个左值,并不是他原来的类型。如果我们需要一种方法能够按照参数原来的类型转发到另一个函数,这种转发类型称为完美转发。forward可以保持实参的类型、左值右值、是否constforward的原型大致如下template<typename T> ...

2019-06-25 16:44:56 696

转载 在linux下永久添加静态路由

在linux下永久添加静态路由有两种方法:添加路由的命令:1,route add 1 2 3 4 routeadd-net192.56.76.0netmask255.255.255.0deveth0#添加一条静态路由 routeadddefaultgw192.168.0.1#添加默认路由 r...

2019-06-25 09:38:05 7963

转载 C/C++中的段错误(Segmentation fault)

Segment fault 之所以能够流行于世,是与Glibc库中基本所有的函数都默认型参指针为非空有着密切关系的。来自:http://oss.lzu.edu.cn/blog/article.php?uid_7/tid_700.html#comment背景最近一段时间在linux下用C做一些学习和开发,但是由于经验不足,问题多多。而段错误就是让我非常头痛的一个问题。不...

2019-06-13 09:43:58 1319

转载 linux之atop监控

介绍atop是一个功能非常强大的linux服务器监控工具,它的数据采集主要包括:CPU、内存、磁盘、网络、进程等,并且内容非常的详细,特别是当那一部分存在压力它会以特殊的颜色进行展示,如果颜色是红色那么说明已经非常严重了。注意:所有的信息都是反映过去10S的状态信息使用atop工具安装好后在运行命令atop就能弹出监控界面接下来我们就来详细看看每行参数意义。a...

2019-05-30 10:26:07 593

转载 快照是什么?揭秘存储快照的实现

前言存储网络行业协会SNIA(StorageNetworking Industry Association)快照的定义:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。需要注意的是:快照是完全可用的拷贝,但不是一份完整的拷贝,至于为什么,后面会详细讲。存储快照的使用场景场景一...

2019-05-27 13:44:34 293

转载 linux查看进程线程的方法

在Linux中查看线程数的三种方法1、top -H手册中说:-H : Threads toggle加上这个选项启动top,top一行显示一个线程。否则,它一行显示一个进程。2、ps xH手册中说:H Show threads as if they were processes这样可以查看所有存在的线程。3、ps -mp <PID>手册中说:m Show threads...

2019-05-17 10:54:21 27532

转载 基于C++11实现线程池的工作原理

目录基于C++11实现线程池的工作原理. 简介 线程池的组成 1、线程池管理器 2、工作线程 3、任务接口, 4、任务队列 线程池工作的四种情况. 1、主程序当前没有任务要执行,线程池中的任务队列为空闲状态. 2、主程序添加小于等于线程池中线程数量的任务. 3、主程序添加任务数量大于当前线程池中线程数量的任务. 4、主程序添加任务数...

2019-05-09 16:45:57 240

转载 《软技能-代码之外的生存指南》读书笔记

简介这本书的作者John Sonmez是个有着健硕肌肉的非典型程序员。十八、九岁就开始投资房地产,当过模特,为在线培训网站录过50多期视频课程。可以访问他的网站Simple Programmer感受下,上面有很多视频,包括自我营销、编程、健身等等内容。这本书分七篇70章,分别从职业、自我营销、学习、生产力、理财、健身、精神七个方面,针对程序员给出了建议。第1章名称便是“为何这本书与你先前度...

2019-04-23 14:41:07 307

转载 搞定操作系统面试,看这篇就够了

作者:CyC2018链接:https://github.com/CyC2018/CS-Noteshttps://mp.weixin.qq.com/s?__biz=MzI5MzYzMDAwNw==&mid=2247486201&idx=1&sn=1cfa82fd72d379d807fd1aa23ca09e4a&chksm=ec6e73a1db19fab782e...

2019-04-18 11:11:15 581

转载 关于linux操作系统_信号_sigprocmask函数

sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。他是POSIX的信号接口,而signal()是标准C的信号接口(如果程序必须在非POSIX系统上运行,那么就应该使用这个接口)给信号signum设置新的信号处理函数act, 同时保留该信号原有的信号处理函数oldact intsigaction(intsigno,conststructs...

2019-04-17 16:44:18 317

转载 进程切换(进程上下文和中断上下文)详解

进程上下文VS中断上下文1.内核空间和用户空间内核空间和用户空间是现代操作系统的两种工作模式,内核模块运行在内核空间,而用户态应用程序运行在用户空间。它们代表不同的级别,而对系统资源具有不同的访问权限。内核模块运行在最高级别(内核态),这个级下所有的操作都受系统信任,而应用程序运行在较低级别(用户态)。在这个级别,处理器控制着对硬件的直接访问以及对内存的非授权访问。内核态和用户态有自己的内...

2019-04-17 10:02:46 7229 1

转载 浅谈几种常用的设计模式

Num1:单例模式基本概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。常见写法:懒汉式public class Singleton { /* 持有私有静态实例,防止被引用,此处赋值为null,目的是实现延迟加载 */ private static Singleton instance = null; /* 私有构造方法,防止被...

2019-04-16 15:01:51 184

转载 dynamic_cast和static_cast的异同

dynamic_cast和static_cast是C++中的运行时类型转换运算符,代码如下:class A{public: INT data; virtual void test() {};};class C{public: virtual void show() { }};class B :public A{public: void test()...

2019-04-12 17:43:34 313

转载 荐书:Operating Systems: Three Easy Pieces

今天介绍一本书,书名叫做:《Operating Systems: three easy pieces》。如果日常工作中和底层打交道的话会遇到很多操作系统相关的问题,比如:为何系统会出现 load 值高 cpu 利用率却不高的情况?为何会有那么多僵尸进程?某些场景下如何快速创建进程的 snapshot ?如何高效利用 CPU Cache Line(利用 Cache Friendly 的数据结构)...

2019-03-28 10:44:32 3280

转载 孤儿进程与僵死进程总结

1、前言  之前在看《unix环境高级编程》第八章进程时候,提到孤儿进程和僵尸进程,一直对这两个概念比较模糊。今天被人问到什么是孤儿进程和僵尸进程,会带来什么问题,怎么解决,我只停留在概念上面,没有深入,倍感惭愧。晚上回来google了一下,再次参考APUE,认真总结一下,加深理解。2、基本概念  我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的...

2019-03-27 10:19:04 163

HeadFirstSQL_中文_深入浅出SQL_超高清

《深入浅出SQL》能让你学到什么?在如今的世界,数据就是力量,但是成功的真正秘诀却是管理你的数据的力量。《深入浅出SQL》带你进入SQL语言的心脏地带,从使用INSERT和SELECT这些基本的查询语法到使用子查询(subquery)、连接(join)和事务(transaction)这样的核心技术来操作数据库。到读完《深入浅出SQL》之时,你将不仅能够理解高效数据库设计和创建,还能像一个专家那样查询、归一(normalizing)和联接数据。你将成为数据的真正主人。 为什么《深入浅出SQL》看起来如此不同? 我们认为你的时间如此宝贵以至于不应该花费在为新概念伤脑筋上面。《深入浅出SQL》用最新的认知科学和学习理论打造多感官的学习体验,它运用丰富的视觉形式激发你的大脑工作,而不是密密麻麻的文字让你看了昏昏欲睡。

2019-06-04

高性能MySQL_第3版_中文_带书签目录_超高清

《高性能mysql(第3版)》是mysql 领域的经典之作,拥有广泛的影响力。第3 版更新了大量的内容,不但涵盖了最新mysql 5.5版本的新特性,也讲述了关于固态盘、高可扩展性设计和云计算环境下的数据库相关的新内容,原有的基准测试和性能优化部分也做了大量的扩展和补充。全书共分为16 章和6 个附录,内容涵盖mysql 架构和历史,基准测试和性能剖析,数据库软硬件性能优化,复制、备份和恢复,高可用与高可扩展性,以及云端的mysql 和mysql相关工具等方面的内容。每一章都是相对独立的主题,读者可以有选择性地单独阅读。 《高性能mysql(第3版)》不但适合数据库管理员(dba)阅读,也适合开发人员参考学习。不管是数据库新手还是专家,相信都能从本书有所收获。

2019-06-04

网络是怎样连接的_户根勤_彩印.pdf

非常高清,彩印版。 本书以探索之旅的形式,从在浏览器中输入网址开始,一路追踪了到显示出网页内容为止的整个过程,以图配文,讲解了网络的全貌,并重点介绍了实际的网络设备和软件是如何工作的。目的是帮助读者理解网络的本质意义,理解实际的设备和软件,进而熟练运用网络技术。同时,专设了“网络术语其实很简单”专栏,以对话的形式介绍了一些网络术语的词源,颇为生动有趣。 本书图文并茂,通俗易懂,非常适合计算机、网络爱好者及相关从业人员阅读。

2019-05-12

深入Linux内核架构_非常清晰_带书签笔记

豆瓣超高评分,超过9分的经典大作! 深入Linux内核架构_非常清晰_带书签笔记。 众所周知,Linux操作系统的源代码复杂、文档少,对程序员的要求高,要想看懂这些代码并不是一件容易事。本书结合内核版本2.6.24源代码中最关键的部分,深入讨论Linux内核的概念、结构和实现。具体包括进程管理和调度、虚拟内存、进程间通信、设备驱动程序、虚拟文件系统、网络、时间管理、数据同步等方面的内容。本书引导你阅读内核源代码,熟悉Linux所有的内在工作机理,充分展现Linux系统的魅力。 本书适合Linux的系统编程人员、系统管理者以及Linux爱好者学习使用。

2019-04-14

深入浅出设计模式__HeadFir设计模式_带书签_笔记

经典的设计模式书籍,深入浅出,豆瓣超高评分9.3 《深入浅出设计模式》的编写运用许多最新的研究,包括神经生物学、认知科学以及学习理论,这使得《深入浅出设计模式》能够将这些设计模式深深地烙印在你的脑海中,不容易被遗忘。你将会更擅长于解决软件设计中的问题,并能够和你的团队成员用模式的语言来更好地沟通。

2019-04-14

深入理解计算机系统_原书第三版3版_part1__超清晰带书签500M

深入理解计算机系统_原书第三版3版_part1__超清晰带书签500M。 豆瓣评分9.5超高分,经典计算机百科全书,常读常新。 《深入理解计算机系统》主要介绍了计算机系统的基本概念,包括最底层的内存中的数据表示、流水线指令的构成、虚拟存储器、编译系统、动态加载库,以及用户应用等。

2019-04-14

深入理解计算机系统_原书第三版3版_part2__超清晰带书签500M

深入理解计算机系统_原书第三版3版_part2__超清晰带书签500M。 豆瓣评分9.5超高分,经典计算机百科全书,常读常新。 《深入理解计算机系统》主要介绍了计算机系统的基本概念,包括最底层的内存中的数据表示、流水线指令的构成、虚拟存储器、编译系统、动态加载库,以及用户应用等。

2019-04-14

深入理解计算机系统_原书第三版3版_part3_带书签超高清500M

深入理解计算机系统_原书第三版3版_part3_带书签超高清500M 豆瓣评分9.5超高分,经典计算机百科全书,常读常新。 《深入理解计算机系统》主要介绍了计算机系统的基本概念,包括最底层的内存中的数据表示、流水线指令的构成、虚拟存储器、编译系统、动态加载库,以及用户应用等。

2019-04-14

深入理解计算机系统_原书第三版3版_part4_带书签超高清500M

深入理解计算机系统_原书第三版3版_part4_带书签超高清500M 豆瓣评分9.5超高分,经典计算机百科全书,常读常新。 《深入理解计算机系统》主要介绍了计算机系统的基本概念,包括最底层的内存中的数据表示、流水线指令的构成、虚拟存储器、编译系统、动态加载库,以及用户应用等。

2019-04-14

深入理解C#_中文第三版

深入理解C#_中文第三版

2017-08-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除