关于Spinlock机制的一点思考】的更多相关文章

存在两段代码同时在多核上执行的情况,这时候才需要一个真正的锁来宣告代码对资源的占有. 几个核可能会同时access临界区,这时的spinlock是如何实现的呢? 要用到CPU提供的一些特殊指令,对lock变量进行原子操作. SMP中spin_lock的实现 实现在include/linux/spinlock_api_smp.h static inline void __raw_spin_lock(raw_spinlock_t*lock) { preempt_disable(); spin_acq…
关于异常的一点思考 异常生命周期 异常的来源 所有的异常都是抛出来的 有底层api抛出的 有自定义抛出的 异常的处理 1, 运行时异常 不做任何处理仍可编译通过 不建议捕获(不建议用异常来做流程控制,异常是程序中的非正常情况) 2, 受检查异常 必须处理,否则编译通过 处理方式:捕获处理 或者抛出处理 异常的终态 1, 对于捕获处理的异常 虚拟机不再做额外处理 2, 对于抛出的异常 受检查异常:在编译通过的情况下,会一直抛出直到main 层,如果在main仍然没有 捕获处理 则 虚拟机会调用 e…
Title:MSSQL显错注入爆数字型数据的一点思考 --2011-02-22 15:23 MSSQL+ASP 最近在弄个站点,密码是纯数字的,convert(int,())转换出来不报错,也不知道其他人用的什么函数或者类型来爆密码像"11111111"的这样的数据的,就自己想了下弄了个暂时可以用的方法. 数据库查询如图: 图一: 图二: 图三: 图四: 图五: 下面是实验 表Member 字段Password 语句 ' or 1=convert(int,(select top 1 p…
对dump脱壳的一点思考 偶然翻了一下手机日历,原来今天是夏至啊,时间过的真快.ISCC的比赛已经持续了2个多月了,我也跟着比赛的那些题目学了2个月.......虽然过程很辛苦,但感觉还是很幸运的,能在大三的时候遇到ISCC,不管怎样,对我来说都会是一个很好的锻炼机会. 在做综合关的逆向破解的题目,遇到了很多蛋疼的问题,磕磕碰碰把<加密与解密>看完了.还是老习惯,把这1个多星期以后学到的,想到的做一个总结,希望能有一个思想上的提高,也希望能对其他人有一个借鉴的效果吧.这里想起lenus大神的一…
linux kernel 内存管理是个很大的话题,这里记录一点个人关于slab模块的一点思考总结. 有些书把slab介绍成高速缓存,这会让人和cache,特别是cpu cache混淆,造成误解.slab最开始的目的是解决频繁内存分配的效率问题,所以把频繁分配回收的对象,预先分配并初始化好,后面的对象分配回收主要就是对象管理数据的维护工作.linux kernel 通过把整个物理内存划分成以一个个page进行管理,管理器就是伙伴系统,它的最小分配单元就是page.但是对于小于page的内存分配,如…
这几天在看招聘公告前端工程师的要求基本都附带了html语义化的要求,所以稍微关注了下这方面的知识.对于其中的一点就是要求页面元素在去除css样式之后还能有良好的布局引发了我一点思考.作为前端刚入门的我,现在所采用的页面是非常流行的div+css样式,在去除css样式之后,页面布局散乱不堪.所以最近在看html5的页面常用元素.同时,今天看到了前些日子写的一段代码,关于元素遮罩层的,对于我这种js菜鸟而言,我一般是把遮罩层直接写在页面上的,我想这点应该也是不符合html语义化的规范吧,我稍微想了下…
c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings name="  " connectionString="  "></connectionStrings >, connectionString代表数据库链接字符串,name代表你想要引用的时候查找的名称.(其实asp里的web.config配置方式也跟这…
基于CAS分析对ABA问题的一点思考 什么是CAS? 背景 synchronized加锁消耗太大 volatile只保证可见性,不保证原子性 基础 用CPU提供的特殊指令,可以: 自动更新共享数据; 能检测到是否有其他线程的干扰; CAS(Compare and Swap) 不加锁而是尝试去完成替换(写)操作,如果失败就重试,直到成功; 分析 // AtomicInteger public class AtomicInteger extends Number implements java.io…
作者:Dimple 公众号:奔跑吧攻城狮 简介:专属于Java和Android开发,和你聊聊职场话题,一同展望未来 作为小小号主的我表示很无力啊,这几天,天天都是热点.前有网易员工勇敢发声维护自己的利益,紧接着网易所谓的道歉:接下来又是2017-2019的对比,勾起了一个个满满的回忆:再来就是全球IPv4用尽,这个在学生时代就说快要用尽的东西,终于等来了他耗尽的消息:然后然后,其实还有浙江卫视录节目,高以翔猝死的事情. 天天追着热点走,怎么也跑不过新闻,哈哈.但是呢,该有的分析还得有,该有的分享…
关于KMP的一点思考 KMP的\(next\)数组的性质很精妙,有必要开一个坑学习一下 Part 1 啥是next \(next[i]\)表示对于\(pre_i\)这个字符串,这个抠出来的字符串本身后缀和前缀相等的最长长度.是一个自变量只和这个子串有关的函数.这点很重要 由于保证了是最长长度,这个数有一些优良的性质,常常在关于一个串的循环表示或者周期表示中发挥作用. 注意到这个\(next[i]\)虽然代表是这个最长长度,但是值得注意的是,由于字符串从1开始编号,所以这个值也是那个前缀的下标.…