>>> YieldNull
  • /blog
  • /archives
  • /github
  • /about

Blog Entries all / by tag / by year

  • Maven 仓库依赖网络分析

    2017-11-20 22:10:11 / Maven Spark /1272 hits

    使用 Spark GraphX 以及 Gephi 对 Maven 仓库中的 Artifact, Group 间的依赖网络进行可视化的分析。

    Read more...


  • CPU虚拟化的实现机制

    2017-11-09 14:18:37 / OS /1326 hits

    我们知道在多进程环境下,操作系统通过不停地在各进程间切换来分享CPU,以达到CPU虚拟化的目的。那么CPU是怎样实现这一目的的呢?

    先来看看操作系统不限制进程行为时的模型。

    Screen Shot 2017-11-09 at 10.33.12

    Read more...


  • 利用进程、线程、协程并发执行任务

    2017-10-05 17:20:57 / CS Python /1725 hits

    Screen Shot 2017-10-05 at 15.41.26

    Read more...


  • HTTP Over TLS 简介

    2017-09-03 16:48:22 / HTTPS Network /3087 hits

    以前一直认为HTTPS是个很神秘的协议。两年前用Charles抓包时碰到HTTPS,各种配置证书、各种折腾之后,才能看到加密之前的数据。如今登录校园WIFI时,要是一不小心访问了使用HTTPS的网站,那么认证页面就无法打开了。

    HTTPS的黑匣子里面到底存在些什么呢?现在是时候揭开HTTPS的神秘面纱了!

    Read more...


  • 用数字证书证明你是你

    2017-09-01 21:48:17 / Computer Network /1703 hits

    假设你要将一份机密的文档通过互联网发送给你的朋友老王,你可能会想到先将文档加密之后再发给他。不论你使用的是对称加密,还是非对称加密,首先都需要与老王沟通并确定加密方式,以及加密文档用的密钥。

    假若你使用对称加密方式,密钥显然要告知老王,不然他无法解密。假若你使用的是非对称加密,比如RSA,那么你得知道老王的公钥,用来加密文档。所以你们怎么通过不安全的互联网来协商加密方式呢?

    Read more...


  • Allocator的实现方式

    2017-08-28 22:06:32 / Computer /3137 hits

    Screen Shot 2017-08-27 at 21.41.14

    在使用C语言编写程序时,往往会有动态分配内存的需求,比如动态分配数组。动态申请的内存必须是一块连续的地址空间,在不再需要这块内存时,又会对内存进行释放操作。

    当进行多次申请、释放之后,地址空间中会出现许多大大小小的空闲块,这些空闲块可能无法满足新的内存申请,这样就导致空闲块“被浪费了”,从而降低了内存的使用率。

    设计较差的分配器不仅仅会造成内存使用率较低的问题,也很有可能花费更多的时间来搜索空闲块,造成系统吞吐率变低。

    总结而言,分配器的目的有以下两个:

    1. 最大化内存利用率。
    2. 最大化吞吐量。

    Read more...


  • « Previous 2 / 11
  • Next 4 / 11 »

About this site © YieldNull, . 鄂ICP备16003391号