标签: c

解读CUDA汇编PTX(一) [翻译]

Introduction 本文系翻译文章Demystifying PTX Code。 在我最近的文章里,我展示了怎样从CUDA和OpenCL代码生成PTX文件,本文则将重点解读PTX文件里的复杂指令。 我们还是使用向量加法的代码 代码片段: https://gist.github.com/FindHao/394b2f069788e5a4c80a069638a47e1c 原作者的代码项目:https...

解读CUDA汇编PTX–目录

Introduction 近期在研究NVIDIA的CUDA 近汇编 PTX,还不算是真正的汇编,属于中间语言。这里翻译了部分网络上精彩的文章,以及官方的手册。 解读CUDA汇编PTX(一) [翻译] 本文系翻译。主要内容是对一个向量加法的PTX代码分析,适合入门阅读。

NVCC编译过程

Introduction 本文介绍了编写的nVIDIA Cuda代码是如何编译成二进制的。 上图即为官方的流程图。 打印步骤 nvcc -O2 -c vectorAdd.cu -keep -arch sm_20 –dryrun 以samples/0_Simple/vectorAdd为例,写上述编译命令。由于vectoradd这个样例比较简单,因此可以直接使用命令进行编译。 参数说明: 参数 含义...

uCOS III 生产者消费者模型实现

Introduction 本文介绍了我实时系统课程的一个小作业,在ucos 上实现一个生产者消费者模型样例。基于ucos iii,因为ucos ii能直接跑的源码不好找。。 ucos 信号量 官方文档 主要有这么几个函数: OSSemCreate() OSSemDel() OSSemPend() OSSemPendAbort() OSSemPost() OSSemSet() OSSemCreate...

匿名网络概述(Darknet)

1. Introduction 2. 浅网,深网,暗网 3. 洋葱路由(onion routing) 3.1 数据结构 3.2 弱点 3.2.1 计时分析 3.2.2出口节点漏洞 4. Tor(The Onion Router,洋葱路由器) 4.1 Tor浏览器 4.2 移动平台 4.3 Tor的工作原理 4.4 相关工作 4.5 Tor的设计原理 4.5.1 传输单元Cells 4.5.2 线路...

Linux高危漏洞Dirtycow整理

Introduction 本文内容多为转发整理。 2016年10月18日,黑客Phil Oester提交了隐藏长达9年之久的“脏牛漏洞(Dirty COW)”0day漏洞,2016年10月20日,Linux内核团队成员、Linux的创始人Linus修复了这个 0day漏洞,该漏洞是Linux内核的内存子系统在处理写时拷贝(Copy-on-Write)时存在条件竞争漏洞,导致可以破坏私有只读内存映射...

curses-键盘编码-openssl加解密

嵌入式系统实验报告 一 1.Introduction github源码地址 1.1 键盘编码 按键过程: 当用户按下某个键时, 1.键盘会检测到这个动作,并通过键盘控制器把扫描码(scan code)传送到计算机;键盘扫描码跟具体的硬件有关的,不同厂商对同一个键的扫描码有可能不同。 2.计算机接收到扫描码后,将其交给键盘驱动程序; 3.键盘驱动程序把这个扫描码转换为键盘虚拟码;虚拟码与具体硬件无关...

CacheSim-5 实验数据分析

Introduction CacheSim 简单的Cache模拟器 专辑目录本文统计了组相联路数、cache_line_size,cache_size以及替换策略对miss率和读写通信数据量的影响,并以图表的形式展现出来。 1. 组相联路数的影响 不变条件:cache_line_size 32bytes,LRU,Cache_size 32KB 组相联路数 miss率 1 1.735562 2 1....

CacheSim-4详细实现cache miss以后的操作

Introduction CacheSim 简单的Cache模拟器 专辑目录本文主要介绍cache miss以后的操作。接上一章的cache hit以后的操作,如果miss了 index = get_cache_free_line(set_base); set_cache_line((_u32)index, addr); if (is_read) { cache_r_count++; } else...

CacheSim-3 详细实现check_cache_hit等函数

Introduction CacheSim 简单的Cache模拟器 专辑目录本文详细说明load_trace、check_cache_hit等函数。 1.程序入口 main.cpp主要针对一个测试文件,配置了不同cache line大小,不同组相联路数,不同的替换策略。默认使用写回法。默认cache大小32KB(0x8000 Bytes)。在每次循环里,首先初始化cache的配置,然后设置替换策略...