[推荐] 程序员的自我修养,站在圈外看圈内…… [问题点数:50分]

Bbs1
本版专家分:26
结帖率 93.44%
Bbs9
本版专家分:64719
Blank
红花 2011年8月 C/C++大版内专家分月排行榜第一
2010年12月 C/C++大版内专家分月排行榜第一
Blank
黄花 2011年9月 C/C++大版内专家分月排行榜第二
2011年4月 C/C++大版内专家分月排行榜第二
2010年11月 C/C++大版内专家分月排行榜第二
Blank
蓝花 2011年6月 C/C++大版内专家分月排行榜第三
Bbs4
本版专家分:1680
Bbs11
本版专家分:257101
Blank
红花 2018年10月 扩充话题大版内专家分月排行榜第一
2018年8月 扩充话题大版内专家分月排行榜第一
2018年6月 扩充话题大版内专家分月排行榜第一
2018年5月 扩充话题大版内专家分月排行榜第一
2018年1月 扩充话题大版内专家分月排行榜第一
2017年12月 扩充话题大版内专家分月排行榜第一
2017年11月 扩充话题大版内专家分月排行榜第一
2017年10月 扩充话题大版内专家分月排行榜第一
2017年9月 扩充话题大版内专家分月排行榜第一
2017年8月 扩充话题大版内专家分月排行榜第一
2016年6月 扩充话题大版内专家分月排行榜第一
2015年10月 扩充话题大版内专家分月排行榜第一
2015年4月 扩充话题大版内专家分月排行榜第一
2015年3月 扩充话题大版内专家分月排行榜第一
Blank
黄花 2018年11月 扩充话题大版内专家分月排行榜第二
2018年7月 扩充话题大版内专家分月排行榜第二
2017年6月 扩充话题大版内专家分月排行榜第二
2016年5月 扩充话题大版内专家分月排行榜第二
2015年5月 扩充话题大版内专家分月排行榜第二
2014年11月 扩充话题大版内专家分月排行榜第二
2013年10月 扩充话题大版内专家分月排行榜第二
2013年8月 扩充话题大版内专家分月排行榜第二
Blank
蓝花 2018年9月 扩充话题大版内专家分月排行榜第三
2018年2月 扩充话题大版内专家分月排行榜第三
2017年7月 扩充话题大版内专家分月排行榜第三
2015年8月 扩充话题大版内专家分月排行榜第三
Bbs10
本版专家分:109605
Blank
红花 2015年2月 扩充话题大版内专家分月排行榜第一
Blank
黄花 2018年5月 扩充话题大版内专家分月排行榜第二
2015年1月 扩充话题大版内专家分月排行榜第二
Blank
蓝花 2018年6月 扩充话题大版内专家分月排行榜第三
2018年3月 扩充话题大版内专家分月排行榜第三
2014年12月 扩充话题大版内专家分月排行榜第三
Bbs9
本版专家分:75266
Blank
红花 2017年5月 其他开发语言大版内专家分月排行榜第一
2017年2月 其他开发语言大版内专家分月排行榜第一
Blank
蓝花 2018年11月 扩充话题大版内专家分月排行榜第三
2018年10月 扩充话题大版内专家分月排行榜第三
2017年9月 扩充话题大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs6
本版专家分:5017
Bbs1
本版专家分:52
Bbs1
本版专家分:0
Bbs5
本版专家分:2541
Bbs9
本版专家分:87437
Bbs1
本版专家分:0
Bbs6
本版专家分:6385
Bbs6
本版专家分:6616
Blank
红花 2018年8月 Delphi大版内专家分月排行榜第一
2018年7月 Delphi大版内专家分月排行榜第一
2018年4月 Delphi大版内专家分月排行榜第一
2018年3月 Delphi大版内专家分月排行榜第一
Blank
黄花 2016年11月 Delphi大版内专家分月排行榜第二
Blank
蓝花 2011年10月 其他开发语言大版内专家分月排行榜第三
2010年8月 其他开发语言大版内专家分月排行榜第三
2007年5月 其他开发语言大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:74
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:15
Bbs7
本版专家分:10849
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs3
本版专家分:638
Blank
黄花 2018年10月 Web 开发大版内专家分月排行榜第二
Blank
蓝花 2018年11月 Web 开发大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:3
Bbs4
本版专家分:1021
Bbs1
本版专家分:11
Bbs12
本版专家分:313485
版主
Blank
优秀版主 2016年8月优秀小版主
2014年11月论坛优秀版主
Blank
红花 2018年4月 扩充话题大版内专家分月排行榜第一
2017年7月 扩充话题大版内专家分月排行榜第一
2017年6月 扩充话题大版内专家分月排行榜第一
2017年5月 扩充话题大版内专家分月排行榜第一
2017年3月 扩充话题大版内专家分月排行榜第一
2017年1月 扩充话题大版内专家分月排行榜第一
2016年12月 扩充话题大版内专家分月排行榜第一
2016年11月 扩充话题大版内专家分月排行榜第一
2016年10月 扩充话题大版内专家分月排行榜第一
2014年2月 扩充话题大版内专家分月排行榜第一
2014年1月 扩充话题大版内专家分月排行榜第一
Blank
黄花 2018年6月 扩充话题大版内专家分月排行榜第二
2018年2月 扩充话题大版内专家分月排行榜第二
2017年9月 扩充话题大版内专家分月排行榜第二
2017年2月 扩充话题大版内专家分月排行榜第二
Blank
蓝花 2018年5月 扩充话题大版内专家分月排行榜第三
2018年1月 扩充话题大版内专家分月排行榜第三
2017年12月 扩充话题大版内专家分月排行榜第三
2017年11月 扩充话题大版内专家分月排行榜第三
2017年10月 扩充话题大版内专家分月排行榜第三
2017年8月 扩充话题大版内专家分月排行榜第三
2016年9月 扩充话题大版内专家分月排行榜第三
2016年8月 扩充话题大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs6
本版专家分:6616
Blank
红花 2018年8月 Delphi大版内专家分月排行榜第一
2018年7月 Delphi大版内专家分月排行榜第一
2018年4月 Delphi大版内专家分月排行榜第一
2018年3月 Delphi大版内专家分月排行榜第一
Blank
黄花 2016年11月 Delphi大版内专家分月排行榜第二
Blank
蓝花 2011年10月 其他开发语言大版内专家分月排行榜第三
2010年8月 其他开发语言大版内专家分月排行榜第三
2007年5月 其他开发语言大版内专家分月排行榜第三
Bbs1
本版专家分:0
Bbs7
本版专家分:13594
Bbs1
本版专家分:3
Bbs1
本版专家分:0
Bbs1
本版专家分:31
管理员
程序员自我修养 读书笔记 chp1
1. 前言知乎上面好多推荐看这本书的, 今天拿起来看看, 做些笔记2. 笔记1.2 万变不离其宗 计算机硬件中几个关键部件: 中央处理器cpu 内存 IO控制芯片 硬件结构框架 北桥: 高速芯片 使用 PCI 总线 南桥: 低速芯片 使用 ISA 总线 SMP 和 多核 由于CPU的频率受到制作工艺限制,无法继续提升, 就采用增加cpu 数量提升性能 但是这个有点类似人月神话中的思想,
程序员自我修养-2018我想对自己说点啥
岁月荏苒 ,如今几年过去,实在是没有达到自己曾经的目标,所以我想写点什么时刻来提醒自己不要忘记毕业时候给自己定的那些目标。 宽容 不管是在职场的路上还是技术的路上总会遇到种种不尽如人意的时候,但是不管在什么时候要“宽容”对待。不管是别人出于无知还是有意为之都不要过多的计较。 修心 要清楚自己的目标,不因时间和环境的变化而变化,不因物质的变化而变化。 修性 不骄不躁的走...
【读书笔记】《程序员自我修养 - 连接、装载与库》 (CH02) 编译与链接
本章导语   日常应用程序开发,我们很少需要关注编译和链接过程,IDE一般都将编译和链接的过程一步完成,形成 构建(Build)。但此过程中,我们往往会被这些复杂的集成工具所提供的强大功能所迷惑,很多系统软件的运行机制与机理被掩盖,其程序的很多莫名其妙的错误让我们无所适从,面对程序运行时种种性能瓶颈我们束手无策。我们需要透过现象看本质,深入理解整个过程的机制,才能游刃有余的解决这些问题。 ...
读《程序员自我修养 —— 库与运行库》乱摘
2016.06.07 - 06.30 读《<em>程序员</em>的<em>自我</em><em>修养</em> —— 链接、装载与库》“库与运行库”的个人理解笔记。06.07 一个程序典型的运行环境:程序(内存),运行库,API,内核。1 内存1.1 程序的内存布局 Linux进程虚拟地址空间分布1.2 栈与调用惯例(1) 栈栈。栈是一个特殊的容器(抽象的描述)。将数据放入栈中叫作入栈;将数据从栈中取出来称为出栈。出栈和入栈需要遵循的规则:先入栈的数据后
程序员自我修养—链接、装载与库.pdf
程序呗修练内功的好书-<em>程序员</em>的<em>自我</em><em>修养</em>—链接、装载与库.pdf
程序员自我修养》笔记
本书作者:陈逸鹤 以下是我读此书时作的一些笔记,当然书中还有很多值得参考的想法,就不一一列举了。 一万小时说法 ☆ 这个说法很普遍了,它再次提醒了我如何去做一个领域的专家。如果平均每天八小时在这个领域上,那么一年300天=300 * 8 = 2400,保持这种学习激情在上面,五年内就可以成为专家了,我算了算自己在这个领域投入的时间(主要学习时间),除去我没有怎么写代码的时间,我从14年开始...
构建程序员知识体系(PHP)--程序员自我修养
工作一年,回顾一下我到底有了神马改变? 1.知识网络的构建---广度 A:吃饭的一套家伙LA/NMP( Linux + Apache/Nginx +  Mysql + PHP) B:    好歹是做WEB开发的,HTML+ CSS + Javascript总要会点吧?         C:    主要工作是开发PHP提供接口(邪恶了一下!),对于网络知识总不能少!(神马TCP,UD
论一个女程序员自我修养
借星爷的经典台词,标题是: 论一个女<em>程序员</em>的<em>自我</em><em>修养</em>   开头是: 我是一名程序媛 目前在一家创业互联网公司做服务器和后台的开发与运维 运用到的技术是传统的 .NET,MVC、三层架构,以及一些API云云... 我的工作是配合运营部门,完成每个版本改版后相应的服务器后台功能优化 我不太喜欢用“菜鸟”这个词来形容自己多年来在软件方面学习到的知识 确切点说 ---“辣鸡”(我这么说我
程序员自我修养》第十章读书笔记
第十章主要对程序的运行时内存布局进行分析。而本书接下来的几章主要是针对程序的运行环境进行研究。
程序员自我修养笔记一
分时系统(TimeSharing System):每个程序都运行一小段时间(时间片) 多任务系统(Multi-tasking):比分时系统更吊当前最流行的,程序以进程方式运行,有优先级(cpu分配资源的方式是抢占式) 有时间片(及其短,短的原因是因为要以优先级为进程调度的最重要因素) 1.5内存不够怎么办? 各进程地址空间得隔离,防止进程间数据干扰;解决方法就是虚拟地址(MMU机制) 1
程序员自我修养》读后感
七月分主要精力在看《<em>程序员</em>的<em>自我</em><em>修养</em>》,感觉书写的挺好的,一知
程序员自我修养第一章总结
知识点一:假如硬盘有两个盘片,每个盘片有65536个磁道,每个磁道有1024个扇区,而每个扇区的字节数是512个字节,                    所以该硬盘的物理硬盘内存为     2*2*65536*1024*512  =  128 G 知识点二:高速设备连接到北桥,低速设备连接到南桥,南桥通过总线连接到北桥,北桥连接到CPU上,由于CPU处理速度极快,所以CPU采用倍频的方式与
程序员自我修养 --- 链接、装载与库
<em>程序员</em>的<em>自我</em><em>修养</em> 此书正在阅读中,笔记持续更新。。。 回顾 1、线程 (1)什么是线程 轻量级进程 由线程ID、当前指令指针、寄存器集合、堆栈组成 一个进程由一个到多个线程组成,各个线程之间共享程序的内存空间(包括代码段、数据段、堆等)以及一些进程级的资源(如打开文件和信号) (2)单线程 &amp;amp; 多线程 ① 使用多线程的原因 ② 多线程模型 一对...
程序员自我修养
<em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em>
论一个计算机人的自我修养
不忘初心,砥砺前行!
程序员自我修养(带标签目录)
这本书主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项,包括:代码指令是如何保存的,库文件如何与应用程序代码静态链接,应用程序如何被装载到内存中并开始运行,动态链接如何实现,C/C++运行库的工作原理,以及操作系统提供的系统服务是如何被调用的。每个技术专题都配备了大量图、表和代码实例,力求将复杂的机制以简洁的形式表达出来。本书最后还提供了一个小巧且跨平台的C/C++运行库MiniCRT,综合展示了与运行库相关的各种技术。
程序员自我修养之效率与原理抉择
一 追求效率     第一份码农是在一家传统的通讯it公司,虽然是一家股份制公司,但是我所在的地方,福州只是个小分部,而且我所在的小组只有寥寥几人,一只手即可数的过来,除非是有新项目,才有从其他产品线调人过来。所以我呢,需求,测试,运维,维护和开发都有涉及,开发有涉及后台和前台,前台包括web和app.五线程工作的我,十分注重效率,因为白天要维护微信群、QQ群、邮件和地市的电话,还要和客户谈需求,...
程序员自我修养,太现实了!!!
“我自己是一名从事了8年的j a v a全栈开发工程师,辞职目前在做线上教育讲师,来了就是我学生,有不懂的可以问我今年4月我花了一个月整理了一套比较系统适合2018年学习的 j a v a资料,从基础的面向对象到线程,j d b c都有整理,送给每一位小伙伴,这里是学习者聚集地,如果你有兴趣,欢迎初学和进阶中的小伙伴。” 加 Q Q 群:872603705 (招募中) 刚入职的<em>程序员</em>和前辈们吃饭 ...
程序员自我修养-高清
高清目录<em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em><em>程序员</em>的<em>自我</em><em>修养</em>
Web全栈工程师的自我修养 Kindle电子书完整版
内容简介 · · · · · · 全栈工程师正成为 IT 行业的新秀,论是上市互联网公司还是创业公司,都对全栈工程师青睐有加。本书作者是腾讯公司高级工程师,在前端、后端和APP开发方面都有丰富的经验,在本书中分享了全栈工程师的技能要求、核心竞争力、未来发展方向、对移动端的思考。除此之外,本书还详细记录了作者从零开始、学习成长的心路历程。 本书内容全面,客观务实,适合互联网行业新人、<em>程序员</em>,以及期待技术转型的从业者阅读参考。 目录 · · · · · · 什么是全栈工程师 002tFacebook只招全栈工程师 004tWeb开发流程 011t全栈工程师登上舞台 014t全栈工程师的发展前景 如何成为全栈工程师 020t先精后广,一专多长 023t围绕商业目标 027t关注用户体验 从学生到工程师 034t校园招聘 038t获得面试机会 041t实习 野生<em>程序员</em>的故事 046t遭遇“野生<em>程序员</em>” 050t什么是“野生<em>程序员</em>” 053t大公司还是创业公司 工程师事业指南 058t那个什么都懂的家伙 059t积累作品集 068t突出重点 全栈工程师眼中的 072t简介 074t前端视角 077t后台视角 079tBigPipe 高性能网站的关键:缓存 084t什么是缓存 085t服务器缓存 090t浏览器缓存 大前端 098t前端工程师 098t知识体系 104t岗位细分 向移动端转型 112t为什么向移动端转型 113t一个转型故事 114t一定要是自己的产品的用户 115t有哪些方向 持续集成 126t版本控制 134t包管理 141t构建工具 理解编程语言 150t编程语言是什么 159t全栈工程师最佳实践 161t脚本语言的优势 全栈游乐场 168tVPS 172t实践 软件设计方法 178t设计模式 183t架构模式 186t设计原则 高效工程师 192t为什么需要高效 192t提速100倍 学习设计 204t科学家和工程师 207t设计基础 211tFacebook的品牌设计故事 全栈思维 218t有兴趣就够了吗 220t学一点管理 224t沟通:被忽视的竞争力 后记
《演员的自我修养》读后感
岁月如歌。18年暑假已经接近尾声,自己的专业计划坎坷且粗糙,在过去的半个月里我抽空阅读了《演员的<em>自我</em><em>修养</em>》,不仅对表演体系中“斯氏”表演体系有了大致了解,而且在如何做好事情上深受启发。 作者的日记叙述方式真的别具一格,枯燥的体系被讲解得生动活泼,一个个栩栩如生的演员实习生形象也让这本书有趣而真实。这给了我启发,在专业课的学习时,不仅要认真学,还要给自己找到奋斗的动力,找到内在意志力的专注点,这样...
程序员自我修养九Windows下的动态链接
http://www.cnblogs.com/Tan-sir/p/7602147.html 目录 9.1 DLL简介 9.1.1 进程地址空间和内存管理9.1.2 基地址和RVA9.1.3 DLL共享数据段9.1.4 DLL的简单例子9.1.5 创建DLL9.1.6 使用DLL9.1.7 使用模块定义文件9.1.8 DLL显示运行时链接 9.2 符号导出导入表 9
IT/程序员读书录(kindle/mobi格式)
以下书籍均是本人在kindle上阅读过的书籍。以及我认为最好看的依次排序(最好的在前)! 需要资源(免费)的可以留言。持续更新中。。。阅读是多么美好! “大佬”自传: 1--《史蒂夫乔布斯传》 2--《周鸿祎自述》 3--《生命不息,奋斗不止》《我的奋斗》(罗永浩) 4--《腾讯传》(李彦宏) 5--《微软的梦工厂》 6--《硅谷钢铁侠》(埃隆马斯克) 7--《AI未来》《人工智...
疯狂Java程序员的基本修养,完整高清版
李刚编著的《疯狂Java<em>程序员</em>的基本<em>修养</em>》归纳了Java学习者、工作者在学习、工作过程中最欠缺的技术短板,本书把Java编程中的重点、要点、难点、常见陷阱收集在一起,旨在帮助读者重点突破这些看似“司空见惯”的基本功。 《疯狂Java<em>程序员</em>的基本<em>修养</em>》知识主要分为四个部分,第一部分主要介绍Java程序的内存管理,这部分是大多Java<em>程序员</em>最容易忽略的地方——因为Java不像C,而且Java提供了垃圾回收机制,因此导致许多Java<em>程序员</em>对内存管理重视不够;第二部分主要介绍了Java编程过程中各种常见的陷阱,这些陷阱有些来自于李刚老师早年痛苦的经历,有些来自于他的众多学子的痛苦经历,都是Java<em>程序员</em>在编程过程中的“前车之鉴”,希望读者能引以为戒;第三部分主要介绍常用数据结构的Java实现,这部分内容也是大多Java<em>程序员</em>重视不够的地方——因为许多初级<em>程序员</em>往往会感觉:数据结构对实际开发帮助并不大,但实际上,我们每天开发都会使用数据结构,只是经常利用别人的实现而已;第四部分主要介绍Java程序开发的方法、经验等,它们是李刚老师多年的实际开发经验、培训经验的总结,更符合初学者的习惯,更能满足初学者的需要,因此掌握这些开发方法、经验可以更有效地进行开发。 本书提供了配套的网站:http://www.crazyit.org,读者在阅读该书过程中遇到任何技术问题都可登录该站点与李刚老师交流,也可与疯狂Java图书庞大的读者群交流。 本书不是一本包含所有技术细节的手册,而是承载了无数过来人的谆谆教导,书中内容为有一定的Java基础的读者而编写,尤其适合于有一到两年的Java学习经验的读者和参加工作不久的初级Java<em>程序员</em>,帮助他们突破技术基本功的瓶颈。
前辈们帮我解决一个问题吧
我是大一专科新生,现在遇到一个令我难以抉择的事,对于学java的学者来说自考好还是直接考软件工程师,此外,考软件工程师是否难,若想考软件工程师需学那些课程呢。希望各位给我一点指导,先谢大家了。我很急哦
程序员自我修养-CRT中的多线程
线程的访问权限:   多线程运行库: 1.      c语言必须提供多线程的API 2.      有些函数之前设计并不适合多线程,需要改进 Errno,strtok,malloc,new,printf,异常处理等等多线程都是不安全的 在多线程中CRT的改进:   CRT改进: 1.      使用TLS,比如errno在单线程版本中直接返回全局的errno,但是在多线程中返
送书福利又来了,总共10本程序员技术书
上个月送书福利活动《第一次送书福利》,转眼又过去了一个月了。今天刚好双十二,为了感激各位粉丝对于我的公长期关注,我决定在今天再次给大家举办个读者送书福利,本次赠送图书共10本。好了,下面开始我们的送书活动:1、先介绍一下本次博文视点提供的10本书籍。2、本次活动共分为三种形式免费赠送给大家 。活动截止时间:2017 年 12 月 14 号 晚 9 点整 ,活动时间3天 。<em>程序员</em>的成长课知道和做到之间
程序员自我修养——运行库
atexit()函数注册一个main结束时执行的函数。一个典型的程序运行步骤大致如下: 1. 操作系统在创建进程后,把控制权交给程序的入口; 2. 入口函数对运行库和程序运行环境进行初始化,包括堆、IO、线程、全局变量构造等。 3. 入口函数在完成初始化之后调用main函数,开始执行程序主体部分。 4. main函数执行完毕之后,返回到入口函数,入口函数进行清理工作,包括全局变量析构、堆销毁
程序员自我修养(一)-----温故知新
<em>程序员</em>的<em>自我</em><em>修养</em>(一)—–温故知新之前简要的看过一遍这本书的电子版,这次借了实体的书,准备重新看一遍,做下读书笔记.第一章主要讲了一些计算机体系结构的东西,介绍了 cpu-内存-iO设备这一最基本的计算机结构知识,和之后的简单扩展,有进行高速通信计算的北桥,北桥使用PCI总线,以及,专门处理低速设备的南桥,它使用的是ISA总线.接着介绍对称多处理器SMP和多核处理器一些微妙的差别,对于我们编程人员来
程序员自我修养—链接、装载与库
本书主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项,包括:代码指令是如何保存的,库文件如何 与应用程序代码静态链接,应用程序如何被装载到内存中并开始运行,动态链接如何实现,C/C++运行库的工作原理,以及操作系统提供的系统服务是如何被调用的。每个技术专题都配备 了大量图、表和代码实例,力求将复杂的机制以简洁的形式表达出来。本书最后还提供了一个小巧且跨平台的C/C++运行库MiniCRT,综合展示了与运行库相关的各种技术。 本书对装载、链接和库进行了深入浅出的剖析,并且辅以大量的例子和图表,可以作为计算机软件专业和其他相关专业大学本科高年级学生深入学习系统软件的参考书。同时,还可作为各 行业从事软件开发的工程师、研究人员以及其他对系统软件实现机制和技术感兴趣者的自学教材。 媒体评论: 这是一本深人阐述链接、装载和库等问题的优秀图书,读来让人愉悦,你从巾可以清晰地了解程序的前世今生,彻底理解敲人的代码如何变成程序任系统中运行。通读本书不管对于开发还是 trouble shootin都会很有帮助。建议每一位希望从事系统开发、或希望更实务地理解操作系统和编译器、或不满足于只写代码的优秀<em>程序员</em>都拥有这样一本书。      ——邹飞,趋势科技(中国)研发中心资深软件工程师 本书从大处着眼,小处着手,以通俗易懂的语言,深入浅出地对系统软件的底层形成机制进行条分缕析,正合药山禅师所谓“高高山顶立,深深海底行”。循着作者的思绪一路走来,有如醍 醐灌顶。畅快淋漓。非常高兴有预览此书初稿的宝贵机会,我在浏览书稿和查核相关资料的过程中,学到了很多以前未知或知之不深的内容。          ——冯亮,阿里巴巴(中国)网络技术有限公司运维部系统架构师 目录: 第1部分 简介 第1章 温故而知新 1.1 从HELLO WORLD 说起 1.2 万变不离其宗 1.3 站得高,望得远 1.4 操作系统做什么 1.5 内存不够怎么办 1.6 众人拾柴火焰高 1.7 本章小结 第2部分 静态链接 第2章 编译和链接 2.1 被隐藏了的过程 2.2 编译器做了什么 2.3 链接器年龄比编译器长 2.4 模块拼装——静态链接 2.5 本章小结 第3章 目标文件里有什么 3.1 目标文件的格式 3.2 目标文件是什么样的 3.3 挖掘SIMPLESECTION.O 3.4 ELF 文件结构描述 3.5 链接的接口——符号 3.6 调试信息 3.7 本章小结 第4章 静态链接 4.1 空间与地址分配 4.2 符号解析与重定位 4.3 COMMON 块 4.4 C++相关问题 4.5 静态库链接 4.6 链接过程控制 4.7 BFD 库 4.8 本章小结 第5章 WINDOWS PE/COFF 5.1 WINDOWS 的二进制文件格式PE/COFF 134 5.2 PE 的前身——COFF 5.3 链接指示信息 5.4 调试信息 5.5 大家都有符号表 5.6 WINDOWS 下的ELF——PE 5.7 本章小结 第3部分 装载与动态链接 第6章 可执行文件的装载与进程 6.1 进程虚拟地址空间 6.2 装载的方式 6.3 从操作系统角度看可执行文件的装载 6.4 进程虚存空间分布 6.5 LINUX 内核装载ELF 过程简介 6.6 WINDOWS PE 的装载 6.7 本章小结 第7章 动态链接 7.1 为什么要动态链接 7.2 简单的动态链接例子 7.3 地址无关代码 7.4 延迟绑定(PLT) 7.5 动态链接相关结构 7.6 动态链接的步骤和实现 7.7 显式运行时链接 7.8 本章小结 第8章 LINUX 共享库的组织 8.1 共享库版本 8.2 符号版本 8.3 共享库系统路径 8.4 共享库查找过程 8.5 环境变量 8.6 共享库的创建和安装 8.7 本章小结 第9章 WINDOWS 下的动态链接 9.1 DLL 简介 9.2 符号导出导入表 9.3 DLL 优化 9.4 C++与动态链接 9.5 DLL HELL 9.6 本章小结 第4部分 库与运行库 第10章 内存 10.1 程序的内存布局 10.2 栈与调用惯例 10.3 堆与内存管理 10.4 本章小结 第11章 运行库 11.1 入口函数和程序初始化 11.2 C/C++运行库 11.3 运行库与多线程 11.4 C++全局构造与析构 11.5 FREAD 实现 11.6 本章小结 第12章 系统调用与API 12.1 系统调用介绍 12.2 系统调用原理 12.3 WINDOWS API 12.4 本章小结 第13章 运行库实现 13.1 C 语言运行库 13.2 如何使用MINI CRT 13.3 C++运行库实现 13.4 如何使用MINI CRT++ 13.5 本章小结 附录A A.1 字节序(BYTE ORDER) A.2 ELF 常见段 A.3 常用开发工具命令行参考 索引
程序员自我修养—链接、装载与库--书签目录.pdf
这本书主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项,包括:代码指令是如何保存的,库文件如何与应用程序代码静态链接,应用程序如何被装载到内存中并开始运行,动态链接如何实现,C/C++运行库的工作原理,以及操作系统提供的系统服务是如何被调用的。每个技术专题都配备了大量图、表和代码实例,力求将复杂的机制以简洁的形式表达出来。本书最后还提供了一个小巧且跨平台的C/C++运行库MiniCRT,综合展示了与运行库相关的各种技术。 对装载、链接和库进行了深入浅出的剖析,并且辅以大量的例子和图表,可以作为计算机软件专业和其他相关专业大学本科高年级学生深入学习系统软件的参考书。同时,还可作为各行业从事软件开发的工程师、研究人员以及其他对系统软件实现机制和技术感兴趣者的自学教材。
程序员自我修养--计算机网络
摘要计算机网络学习的核心内容就是网络协议的学习。网络协议是为计算机网络中进行数据交换而建立的规则、标准或者说是约定的集合。因为不同用户的数据终端可能采取的字符集是不同的,两者需要进行通信,必须要在一定的标准上进行。一个很形象地比喻就是我们的语言,我们大天朝地广人多,地方性语言也非常丰富,而且方言之间差距巨大。A地区的方言可能B地区的人根本无法接受,所以我们要为全国人名进行沟通建立一个语言标准,这就是
程序员自我修养》读书笔记(二)
第二章 编译和链接 1 被隐藏了的过程 2 编译器做了什么 3 链接器的年龄比编译器长 4 模块拼装静态链接 5 本章小结 第三章 目标文件中有什么 1目标文件的格式 2目标文件是什么样的 3挖掘SimpleSectiono 31 代码段 32 数据段和只读数据段 33BSS段 34其他段 4 ELF文件结构描述 41文件头 42段表 43重定位表 44字符串表 5链接的接口符号 51符号修饰与函数
程序员自我修养--链接、装载与库(高清带完整书签版)
<em>程序员</em>的<em>自我</em><em>修养</em>--链接、装载与库(高清带完整书签版)
程序员自我修养(收藏)
在php社区看到了一篇关于<em>程序员</em><em>自我</em><em>修养</em>的文章,深感赞同,转到这里和大家共勉。看了这篇文章后心里很有触动,发现了自己平时coding的很多问题,
【读书笔记】程序员自我修养总结(一)
<em>程序员</em>的<em>自我</em><em>修养</em>总结(一)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是<em>程序员</em>的<em>自我</em><em>修养</em>一书的读书总结,随着阅读的推进,逐步增加内容。1. 关于CPU的倍频原先并没有倍频概念,CPU的主频和系统总线的速度是一样的,但CPU的速度越来越快,倍频技术也就应运而生。它可使系统总线工作在相对较低的频率上,而CPU速度可以通过倍频来无限提升。那么CPU主频的
【读书笔记】程序员自我修养总结(二)
<em>程序员</em>的<em>自我</em><em>修养</em>总结(二)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是<em>程序员</em>的<em>自我</em><em>修养</em>一书的读书总结,随着阅读的推进,逐步增加内容。由源文件到可执行文件分为四个步骤:预处理处理源代码中以#开始的预编译指令,进行宏定义展开,处理所有条件预编译指令,将被包含文件插入到预编译指令的位置,删除所有注释,添加行号及文件标识,保留#pragma编译器指令,因
程序员自我修养笔记第二章
拿出我们最爱的代码#include void main(){printf("hello world!\n");}然后使用各种IDE,点击编译,点击链接,点击执行。。看似简单的点击背后究竟执行了什么?隐藏在背后的编译器默默帮你做了多少的事情? 好吧,这个有点抽象,估计对初学者来说。现在描述一个生活中的场景吧。假设存在一个汽车制作厂(对应一个软件工程),里面有各种的独立的组件,比如
程序员自我修养:链接、装载与库.epub 高清
<em>程序员</em>的<em>自我</em><em>修养</em>.epub 比现在网上的PDF清晰的多、很适合<em>程序员</em>去了解代码底层
高效程序员的45个习惯读书笔记
第1章      敏捷——高效软件开发之道 敏捷开发宣言 *个体和交互胜过过程和工具 *可工作的软件胜过面面俱到的文档 *客户协作胜过合同谈判 *响应变化胜过遵循计划 2. 敏捷工具箱 *Wiki *版本控制 *单元测试 *自动构建 第2章 态度决定一切 态度非常重要,包括团队中的所有人。专业的态度应该着眼于项目和团队的积极结果,关注个人和团队的成长,围绕最后的成功开展
对《程序员自我修养》(龙书)读后思考
一、第一章 温故知新 第一章首先简单说了计算机架构,北桥芯片的来源,南桥芯片的来源,以及系统对内存的基本管理(内存的分段管理,分页)等。然后后面讲到系统中的进程和线程,由于是多进程、多线程,以及安全问题。(线程安全问题其实就是同步问题) 多线程是为了cpu计算资源的更好利用,和资源的并行执行! 对于目前实现线程安全问题有一些概念: 原子操作,因为一些重要的同步计算过程不是原子的,那么在调度
程序员自我修养-目标文件的结构
图片引用《<em>程序员</em><em>自我</em><em>修养</em>》一书中 下图是整个ELF的结构: 起始是ELF的头文件: 具体头文件内容见图2                                图1. ELF文件的结构   图2. ELF头文件内容 在Elf头文件的一些属性解释: e_entery :入口地址,如果是可重定向文件的话该值为0 e_shoff (start of section
读书笔记——《程序员自我修养》——内存不够怎么办?
内存不够怎么办?
程序员提高自我修养
<em>程序员</em>提高<em>自我</em><em>修养</em>是为了什么?程序写的好有人崇拜,有妹子喜欢?还是到博客、论坛、社区发表文章进行分享获得成就?我想这是少数人的追求,也是更高的追求,在这之前我认为,在中国,<em>程序员</em>提高<em>自我</em><em>修养</em>的目的,是为了1、更好的融入工作,减少困难,增加成就2、稳步的提升能力,提高收入,达成财务自由2、<em>站在</em>更高的层面看待自己的学习和工作,树立更加适合的人生观价值观,家庭幸福,生活愉快说的更通俗一点,就是用更加合理...
程序员自我修养——链接,装载与库(第3,4部分)
第3部分 装载与链接 第6章 可执行文件的装载与进程 第1节 进程的虚拟地址空间 linux下虚拟地址空间的分配 第2节. 程序装载方式 1. 覆盖装入 2. 页映射   第3节 从操作系统角度看可执行文件的装载 1. 进程的建立过程 2. 页错误 第4节 进程虚存空间
程序员自我修养》--动态链接
定义和基本思想动态链接英文是Dynamic Linking需要解决空间浪费和更新困难这两个问题最简单的办法就是把程序的模块相互划分开来,形成独立的文件,而不再将他们静态的链接在一起。简单地讲,就是不对那些组成程序的目标文件进行链接,等到程序要运行时才进行链接。也就是说,把链接这个过程推迟到了运行时再进行,这就是动态链接(Dynamic Linking)的基本思想补充理解普通可执行程序和动态链接库都包
程序员自我修养》--读书笔记
印象 拿到这本书,肯定会想到星爷的《喜剧之王》中的《演员的<em>自我</em><em>修养</em>》;没错,可能我们都是一些死烂演员,但是如果我们坚持,打好最基础的根基,总有一天,我们会成为优秀的<em>程序员</em>。 书的副标题是:链接、装载与库,没错,这三个连贯的主题构成了文章的核心内容,目前也有这方面的开源代码(轮子),作为<em>程序员</em>,我们并不鼓励重复造轮子,但是我们应该了解轮子的构造,特别是很基础层次的轮子。文中反复重复的一个观点是...
文章热词 机器学习 机器学习课程 机器学习教程 深度学习视频教程 深度学习学习
相关热词 c++程序员 java程序员 bootstrap table自我刷新 c#判断点在圆圈内 工具 看android源码 人工智能自我学习能力 自我学习人工智能
我们是很有底线的