采用内核驱动侏注入方式,在程序启动的时候注入DLL。
具体实现采用SSDTHOOkNtCreateProcessNtCreateThread等函数实现,待改进点:SSDT中未导出函数的地址获得方式(或索引获得方式)
2024/7/4 11:45:24 711KB 驱动 内核, 注入
1
这本书主要是讲在使用C++11特性时对并发的深入探讨。
它是由作为语言新线程支持基础的BoostThread库的主要开发及维护人员编写的。
总之,作者很有权威性。
该书从最基础的东西开始,假设读者已经有良好(甚至是非常好)的语言基础,但是首次接触并行代码。
该书逐步地探讨了一些由并发带来的问题,讲述了互斥的解决方案和局限性,以及它们是如何在C++11中实现的。
接下来讲述了C++的内存模型和原子类型。
最后,深入探讨了基于锁和无锁数据结构的设计。
这是自从HerbSutter在书中讨论这个话题之后,我所见过的最好的处理方法。
这本书很全面地涵盖了一些真正重要的话题,这些话题在其他书籍中是经常被忽略的,比如像,多线程的代码设计,线程应用程序的调试。
当然,在我看来,这两者都描述得太少了。
书中大部分内容都是作为参考资料(就单独的C++线程库就有差不多130页)。
另一个附录是一个完整的消息框架,并给出了代码和注解。
毫无疑问,作者还是花费了很大的心思,相关的内容都讲到了。
对于这本书,我也有不满意之处,但是它们都微不足道。
第一个就是你必须深入了解C++,否则阅读起来比较困难。
另一个就是作者最后一章讲述的线程池,用红色字体显示的”高级线程”。
在我看来,线程池在并发处设定标记很有意思,但是很可惜,作者却在这儿停笔了。
由此可得知,虽然作者在目录有提及到角色模型,但并没有进行讲解,就好像它压根儿不存在一样,可能在William看来,它其实对好几种语言至关重要,却不包括C++。
总的来说,这些不满意之处只能反应我的偏好,不能说明这本书有缺陷。
William的这本书非常棒,至少在未来的很长一段时间里都能称得上是这个领域的典型著作。
如果你想更仔细地看下这本书的内容,我们最近在一篇很受欢迎的文章里”WaitingforOne-OffEventswithFutures。
”有摘选了一些片段。
2024/7/2 3:36:47 2.13MB C++ 并发
1
第1章C++关键语法及其在VC++中的应用1.1重载1.1.1函数重载1.1.2运算符重载1.1.3函数重载在MFC中的应用举例1.1.4运算符重载在MFC中的应用举例2.2虚拟函数1.2.1静态联编与动态联编1.2.2虚拟函数的定义1.2.3虚拟函数的实现机制1.2.4虚拟函数的应用1.2.5纯虚拟函数1.2.6虚拟函数在MFC中的应用举例1.3静态成员1.3.1静态成员变量1.3.2静态成员函数1.3.3静态成员变量在MFC中的应用举例1.3.4静态成员函数在MFC中的应用举例1.4类模板1.4.1类模板的定义1.4.2使用类模板和模板类1.4.3模板在MFC中的应用举例1.5多重继承和内嵌类1.5.1继承方式与访问权限1.5.2多重继承和虚拟基类1.5.3内嵌类与类合成1.5.4类继承与类合成的应用1.5.5多重继承和内嵌类在COM中的应用第2章MFC类结构与窗口操作2.1MFC类结构2.1.1CObject类2.1.2CCmdTarget类2.1.3CWinThread类2.1.4CWnd类2.2CWnd类与Windows窗口的关系2.2.1使用WIN32API创建窗口2.2.2亲自动手创建窗口封装类2.2.3CWnd类如何封装Windows窗口2.3CWnd的派生类2.3.1CFrameWnd类2.3.2CView类2.3.3CDialog类2.4窗口操作2.4.1检索窗口2.4.2屏幕坐标与客户区坐标2.4.3窗口之间的层次关系2.4.4父窗口与子窗口2.5Windows窗口类2.5.1窗口类的结构2.5.2系统定义的窗口类2.5.3窗口的子类化和超类化第3章消息映射与消息处理3.1MFC的消息映射3.1.1消息映射机制3.1.2消息映射的宏定义3.2非窗口消息3.2.1命令消息3.2.2通知消息3.2.3反射消息3.2.4非窗口消息的传递路由3.2.5非窗口消息的扩展3.3特殊消息和处理函数3.3.1空闲消息处理3.3.2命令状态更新消息3.3.3使用OnCmdMsg0函数分发非窗口消息第4章控件子窗口4.1控件的创建和子类化4.1.1控件的创建4.1.2控件的子类化4.2控件的属主画与自定义画4.2.1属主画消息处理和虚拟函数4.2.2几个控件的属主画特性4.2.3控件的自定义画4.3自定义控件4.3.1自定义控件的窗口类4.3.2自定义控件的通知消息4.3.3自定义控件的绘制4.3.4自定义的分隔条控件第5章界面优化5.1开发使用控制条5.1.1为控制条按需分配客户区5.1.2控制条基类CControlBar5.1.3控制条的停靠与浮动5.1.4实现停靠浮动子窗口5.2工具栏优化5.2.1添加按钮文本5.2.2创建工具栏的子控件5.3菜单优化5.3.1动态创建菜单5.3.2菜单的属主画第6章文档视图框架6.1CWinApp应用类6.1.1应用类全局对象6.1.2注册表和INI文件操作6.1.3命令行参数处理6.2单文档模板框架6.2.1文档、框架、视图的动态创建6.2.2非拆分视图的切换6.3多文档模板框架6.3.1CMDIFrameWnd主框架6.3.2CMDIChildWnd子框架6.3.3CDocument类的文档管理功能6.4编写多框架的应用程序6.4.1创建多框架的必要性6.4.2自动创建的多框架程序6.4.3改进自动创建的多框架程序6.4.4手工创建多框架程序6.5拆分视图6.5.1认识CsplitterWnd窗口拆分类6.5.2应用Cview::OnCreate0消息处理函数实现拆分6.5.3创建非视图的拆分子窗口6.5.4拆分视图的创建删除和隐藏显示第7章屏幕绘图与打印7.1MFC设备环境类7.1.1基类CDC7.1.2CWindowDC与CClientDC7.1.3WM_PAINT窗口消息与CPaintDC类7.1.4使用设备上下文的剪裁区提高刷新效率7.2脱离视图的MFC打印功能7.2.1准备打印设备和打印参数7.2.2单页打印7.2.3分页打印7.2.4调整图文打印尺寸7.3窗口的自动打印7.3.1自动打印的消息处理7.3.2自动打印客户区和非客户区第8章多线程的创建与控制8.1工作者线
2024/6/30 22:51:08 18.07MB VC++ 编程技术 Visual C++
1
在GD32E103中添加了GDW5QFlash芯片的代码
2024/6/27 1:58:50 25.45MB rtt RTOS 单片机 嵌入式
1
DistributedSystems(3rd)英文无水印原版pdf第3版pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开本资源转载自网络,如有侵权,请联系上传者或csdn删除查看此书详细信息请在美国亚马逊官网搜索此书Copyright@2017MaartenvanSteenandAndrewS.TanenbaumPublishedbyMaartenvanSteenThisbookwaspreviouslypublishedby:PearsonEducation,IncISBN:978-15-430573-8-6(printedversion)ISBN:978-90-815406-2-9(digitalversion)Edition:3.Version:01(February2017)AllrightstotextandillustrationsarereservedbyMaartenvanSteenandAndrewS.Tanenbaum.Thisworkmaynotbecopied,reproduced,ortranslatedinwholeorpartwithoutwrittenpermissionofthepublisher,exceptforbriefexcerptsinreviewsorscholanyformofinformationstorageadaptationorwhatever,computersoftware,orbysimilarordissimilarmethodsnowknownordevelopedinthefutureisstrictlyforbiddenwithoutwrittenpermissionofthepublisherToMarielle,max,andelkeMVSToSuzanneBarbara,Marvin,Aronnathan,olivia,andmirteASTCONTENTSPreface1Introduction1.1Whatisadistributedsystem?Characteristic1:Collectionofautonomouscomputingelements2Characteristic2:SinglecoherentsystemMiddlewareanddistributedsystems1.2DesigngoalsSupportingresourcesharingMakingdistributiontransparent12Beingscalable15Pitfalls243Typesofdistributedsystems24Highperformancedistributedcomputing25Distributedinformationsystems34Pervasivesystems1.4Summary522Architectures552.1Architecturalstyles56Layeredarchitectures.57Object-basedandservice-orientedarchitectures62Resource-basedarchitectures64Publish-subscribearchitectures2.2MiddlewareorganizationWrappersInterceptors垂番Modifiablemiddleware752.3SystemarchitectureCONTENTSCentralizedorganizations76Decentralizedorganizations:peer-to-peersystemsHybridarchitectures2.4Examplearchitectures94TheNetworkFilesystem94TheWeb982.5Summary3Processes1033.1Threads..104Introductiontothreads104Threadsindistributedsystems1113.2Virtualization116Principleofvirtualizationapplicationofvirtualmachinestodistributedsystems,1223.3Clients124Networkeduserinterfaces124Client-sidesoftwarefordistributiontransparency1273.4Servers128Generaldesignissues129Objectservers133Example:TheApacheWebserver139Serverclusters,,,,,,,1413.5Codemigration152Reasonsformigratingcode152Migrationinheterogeneoussystems1583.6Summary1614Communication4.1Foundations164LayeredProtocols164TypesofCommunication.1724.2Remoteprocedurecall..173Basicrpcoperation174Parameterpassing178RPC-basedapplicationsupport182VariationsonrPc185Example:dCErPc,.1884.3Message-orientedcommunication193Simpletransientmessagingwithsockets.193Advancedtransientmessaging198Message-orientedpersistentcommunication206Example:IBM'sWebSpheremessage-queuingsystem212Example:AdvancedMessageQueuingProtocol(AMQP)....218DS3.01DOWNLOADEDBYTEWIGOMIXMAIL.INFOCONTENTS4.4Multicastcommunication221Application-leveltree-basedmulticasting221Flooding-basedmulticasting225Gossip-baseddatadissemination2294.5Summary2345Naming2375.1Names,identifiersandaddresses2385.2Flatnaming.241Simplesolutions241Home-basedapproaches245Distributedhashtables246Hierarchicalapproaches2515.3Structurednaming256Namespaces.256Nameresolution259Theimplementationofanamespace264Example:TheDomainNameSystem271Example:TheNetworkFileSystem2785.4Attribute-basednaming283Directoryservices283Hierarchicalimplementations:LDAP285Decentralizedimplementations2885.5Summary2946Coordination2976.1Clocksynchronization.298Physicalclocks299Clocksynchronizationalgorithms3026.2Logicalclocks310Lamport'slogicalclocks310Vectorclocks3166.3Mutualexclusion321322acentralizedalgorithm.322adistributedalgorithm323atoken-ringalgorithm.325adecentralizedalgorithm3266.4Electionalgorithms329Thebullyalgorithm.,..330Aringalgorithm332Electionsinwirelessenvironments333Electionsinlarge-scalesystems.3356.5Locationsystems336DOWNLOADEDBYTEWIGOMIXMAIL.INFODS301VIllCONTENTSGPS:GlobalPositioningSystem337WhengPsisnotanoption339Logicalpositioningofnodes3396.6Distributedeventmatching..343Centralizedimplementations3436.7Gossip-basedcoordination349asgregation349Apeer-samplingservice350Gossip-basedoverlayconstruction3526.8Summary3537Consistencyandreplication3557.1Introduction356Reasonsforreplication356Replicationasscalingtechnique3577.2Data-centricconsistencymodels358Continuousconsistency359Consistentorderingofoperations364Eventualconsistency3737.3Client-centricconsistencymodels375MonotonicreadsMonotonicwrites.379Readyourwrite380Writesfollowreads3827.4ReplicamanagementFindingthebestserverlocation383Contentreplicationandplacement..385Contentdistribution..388Managingreplicatedobjects3937.5Consistencyprotocols.396Continuousconsistency..........396Primary-basedprotocols398Replicated-writeprotocolsCache-coherence403Implementingclient-centricconsistency,,...4077.6Example:CachingandreplicationintheWeb4097.7Summar4208Faulttoleran4238.1Introductiontofaulttolerance424Basicconcepts.424Failuodels427Failuremaskingbyredundancy8.2Processresilience432DS3.01DOWNLOADEDBYTEWIGOMIXMAIL.INFO
2024/6/24 6:52:56 36.95MB Distributed Systems
1
各位网友大家好,要运行此工具必需先设置好网页信息,点击菜单栏设置或用快捷键(Alt+E)进入到设置页面,设置页面其中包括三个Tab:基本配置、网页信息和数据库。
基本配置:如果要运行页面点击时自动刷新外网IP就要配置ADSL帐号,现在暂时只支持ADSL刷新外网IP。
单独页面执行是已Html中div的id为标志,意思是循环只执行此选中项,默认是所有项目。
IP数据表就是每执行一下点击网页都会记录下本次的IP,记录文件放在此工具的路径下的Data目录下的iptables.log文件,最小化启动程序就是启动此工具或最小化窗口后台托管运行,就像QQ一样挂着。
循环重启软件运行此项是为了和刷新ADSL一起配合产生独立IP,因为每个浏览器都有Cookies,关闭浏览器就可以彻底清除Cookies产生独立访客(UV)了。
如果同时选择了最小化启动程序可以用全局快捷键Ctrl+Alt+空格解除循环。
网页信息:是一个表格可以进行添加、修改和删除。
页面执行方式有两种:一是completed意思是等网页加载完毕后执行点击,二是thread多线程执行意思是加载页面3秒钟后再执行页面点击。
各有各自的优点,如果发现其中一种执行方式实现不了可以用另外一种试一下。
类型就是网页的链接返回类型,有两种一时纯url链接如:http://www.baidu.com,另一种是数据库SQL语句返回链接集。
用数据库名加@加地址标志,在数据库Tab中配置。
SQL语句一定要返回link结果集如:selectconcat('http://www.google.com/',url)linkfromtable,在SQL语句中不要用双引号,要用单引号,否则会出错。
现在支持MYSQL和MSSQL数据库。
链接就是类型对应的文本。
htmlID是html中div的id,这个是网站网页中要点击的定位点,是这个表的主键必须唯一。
偏移坐标就是htmlID的相对偏移点,用英文逗号隔开如0,0。
状态有两种Y和N,意思是是和否,默认是Y,就是如果您想停用此条记录不加入循环就改为N。
独立IP,默认是N,就是在Data/iptables.log文件中没出现过的当为独立ip。
双击单元格可以修改文本内容。
点击最后的删除可以删除此行记录。
修改或添加后可别忘记了按右下角的保存按钮哦。
数据库tab表格简单明了就不多加说明了。
如果有出现运行异常可以可以查看Data下的error.log错误日志文件。
如果对此工具有何意见或建议可以点击意见反馈发送你的宝贵信息。
此工具支持在线更新。
如收到您的来信,我会尽快的修改更新。
温馨提示:目标执行标签(htmlID)要保持在预览窗口显示,建议最大化窗口最小化后台托管运行。
希望此工具可以帮得了大家。
2024/6/24 5:04:28 144KB 模拟网页点击
1
在实验室学习需要用到UDP,而开发板上的例程要不就是基于RT-thread操作系统的,要不就是基于TCP的demo,没有UDP的裸机程序。
然后在开发板ping例程的基础上,添加从网上找的udpclient.c代码,生成LPC1768UDP_Client代码。
2024/6/23 18:10:54 1.97MB lpc1768
1
本应用笔记描述了如何使用RT-Thread的串口设备,包括串口配置、设备操作接口的应用。
并给出了在正点原子STM32F4探索者开发板上验证的代码示例。
2024/6/15 15:42:58 1.22MB RT-Thread  STM32 RTOS
1
多核编程的一本经典书籍:IntelThreadingBuildingBlocks编程指南PDF清楚非扫描版本。
文件大小约为3M。
1
Unity2018.4.5工程,Plugin内含EDSDK.dll,System.Drawing。
Scripts内含EDSDK的cs脚本,和场景脚本Main,主要通过main.cs和SdkHandler.cs去实现拍照控制,照片文件回传和实时视频播放(有延迟,由于STAThread脚本的存在可能导致关闭应用卡死),资源如有问题欢迎指出。
2024/6/10 16:44:03 4.03MB Unity EDSDK 佳能单反
1
共 234 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡