E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
程序员的自我修养
编译和链接
(摘自《
程序员的自我修养
》)1.被隐藏了的过程 当我们使用gcc来编译一个程序时,例如gcchello.c 运行结束后会生成一个可执行文件,事实上,该命令执行成功的背后可分为四个步骤:预处理(Prepressing
北凉丶悲凉
·
2023-03-16 18:44
程序员的自我修养
——远离“外包思维”
*************************************优雅的分割线**********************************分享一波:程序员赚外快-必看的巅峰干货在我们做开发的日子里,不免会进行跳槽,跳来跳去公司无非就分成两大类——互联网公司、外包公司。当然我们本次讨论的并不是外包公司,而是一些外包公司所培养出来的“外包思维”。什么是“外包思维”呢?简单来说,就是由多
HB荷包
·
2023-03-15 06:05
随手笔记
java
编程语言
大数据
人工智能
数据库
编译与链接------《
程序员的自我修养
》
本篇整理于《
程序员的自我修养
》一书中编译与链接相关知识,整理的目的是为了更加深入的了解编译于链接的更多底层知识,面对程序运行时种种性能瓶颈我们束手无策。
小陶来咯
·
2023-03-14 16:00
小白的崛起之路
函数栈帧
C语言
ide
开发语言
编译与链接
开篇词
相关资料
程序员的自我修养
凡择
·
2023-03-14 07:39
python打包wheel打包问题备忘
多次打包出现重复、嵌套:重新build之前一定要删除build和***.egg-info两个文件夹注意设置packages和package_dir,参考Python深入:Distutils发布Python模块_
程序员的自我修养
qizhen816
·
2023-03-12 07:04
程序员的自我修养
--序
没想到唠叨出来了一个序电影《喜剧之王》中有本著名的书叫《演员自我修养》,或许应该说这本书因电影而出名。虽然我没有看过这本宝书,但是我看过这本书的封面。演员的自我修养我倒是觉得每个职业都该有一本类似的书。可能你会觉得这么说有点矫情,觉得没有必要。不过我倒是觉得这是对职业的尊重,也是对自己生命的尊重自证预言一个人对自我修养的诉求,体现了这他对自身的态度。我们通常看到同样一件事,不同的人做会有着截然不同
杨小伟的世界
·
2023-02-18 23:52
程序员的自我修养
——链接、装载与库.md
第一章温故而知新对于下面这些问题,你的脑子里能够马上反应出一个很清晰又很明确的答案吗?程序为什么要被编译器编译了之后才可以运行?编译器在把C语言程序转换成可以执行的机器码的过程中做了什么,怎么做的?最后编译出来的可执行文件里面是什么?除了机器码还有什么?它们怎么存放的,怎么组织的?#include是什么意思?把stdio.h包含进来意味着什么?C语言库又是什么?它怎么实现的?不同的编译器(Micr
计算机图形学yyds
·
2023-02-17 18:24
程序员的自我修养
阅读笔记
编译和链接将编译和链接合并到一起的过程称为构建(Build)。从源文件生成最终可执行目标文件共有4个步骤:预处理(Prepressing)编译(Compilation)汇编(Assembly)链接(Linking)预处理命令行指令:gcc-Ehello.c-ohello.i预处理实际上使用的是cpp程序:cpphello.c>hello.i预编译过程主要处理那些源代码文件中的以#开始的预编译指令。
snow zhao
·
2023-02-03 11:17
C++
操作系统
编译
链接
编译链接是如何得到可执行文件的呢?
其中,主要参考的是《
程序员的自我修养
》这本书和一些网上的博客。
Sharku
·
2023-02-02 07:44
读《
程序员的自我修养
》
在研读WWDC相关章节时,对里面的虚拟内存和物理内存的相互转换、物理内存的占用和回收、堆栈的管理等内容,有很多疑问,在网上搜索相关解答时,发现线索最终都指向了《
程序员的自我修养
》。
uniapp
·
2023-01-31 17:03
孙其功陪你学之——Spark MLlib之线性回归
转自
程序员的自我修养
–SelfUp.cn由于在学习sparkmllib但是如此详细的资料真的很难找,在此分享。本文不涉及线性回归具体算法和原理性的东西,纯新手向、介绍性的文章。
启功
·
2023-01-29 14:42
spark
spark
mllib
线性回归
Linux系统下ELF可执行文件的装载与执行
本文内容参考自《
程序员的自我修养
——链接、装载与库》首先想和大家探讨几个问题,说一下自己的看法。1.有没有必要读Linux源码?
沉稳的男人
·
2023-01-26 12:36
操作系统
静态链接过程分析
前期准备这边使用《
程序员的自我修养
》中的例子//a.cppexternintshared;voidswap(int*a,int*b);intmain(){inta=100;swap(&a,&shared
天天摸鱼身体棒
·
2023-01-26 12:59
编译与链接
c++
可执行文件的装载与进程的一点小总结 《
程序员的自我修养
》·笔记
可执行文件的装载与进程小结进程的虚拟地址空间 每个程序被运行起来之后都拥有自己独立的虚拟地址空间,这个虚拟地址空间的大小是CPU的位数决定的。比如,32位的硬件平台决定了虚拟地址空间的地址为(2^32-1),也就是我们常说的4GB虚拟内存的大小。 需要注意的是,分配的4GB的虚拟空间并不是全部给进程的,比如,linux下1GB给操作系统,余下的3GB中基本上都分配给进程,但是3GB中的其中小部
hust_sheng
·
2023-01-26 12:59
linux
linux
操作系统
程序员的自我修养
--链接、装载与库笔记:可执行文件的装载与进程
可执行文件只有装载到内存以后才能被CPU执行。1.进程虚拟地址空间程序和进程有什么区别:程序(或者狭义上讲可执行文件)是一个静态的概念,它就是一些预先编译好的指令和数据集合的一个文件;进程则是一个动态的概念,它是程序运行时的一个过程,很多时候把动态库叫做运行时(Runtime)也有一定的含义。每个程序被运行起来以后,它将拥有自己独立的虚拟地址空间(VirtualAddressSpace),这个虚拟
fengbingchun
·
2023-01-26 12:27
C/C++/C++11
VMA
Segment
第六章:可执行文件的装载与进程--重点知识概括整理
下面是对俞甲子等著的书籍《
程序员的自我修养
》第6章主要内容的整理。
leanrocks101
·
2023-01-26 12:56
操作系统
linux
编程语言
2021要读的书目
遥远的救世主》《影响心理学的四十个实验》原则:技术书读书原则:看一遍,一个月后复习一遍,简要的笔记要有《图解TCP/IP》《微服务设计》(进行中)《领域驱动设计》《实现领域驱动设计》《rest实战》《
程序员的自我修养
c5035c045bb5
·
2023-01-26 02:27
C 语言编译链接
本文将带你简要了解C程序编译过程,文章为《
程序员的自我修养
—链接、装载与库》的读书笔记,更为详细的过程可以阅读原书。比如下面一个经典的C程序,它可以用来测试我们开发环境是否配置正确,那它经历了什么?
叫我小秦就好了
·
2023-01-17 12:25
C语言
c语言
linux
开发语言
程序员的自我修养
之数学基础08:特征值、特征向量和特征值分解
啊,转行学计算机的过程,就是不断“开倒车”的过程……为了理解概念A,你发现你得先理解概念BCD,为了理解概念B,你发现还得明白概念EFD……一直开倒车到大一的高数线代……不过Anyway,坚持就是胜利,继续看下去吧!!!特征向量和特征矩阵,真的是非常非常重要的概念啊,不管是课本还是论文里,翻一翻就能看到。那它们到底在说什么呢?先甩概念——看起来有点晕,不急,让我们理一理。我们知道,矩阵,代表的是“
M&Q
·
2023-01-06 17:32
数学基础
特征值
特征向量
特征值分解
实对称矩阵
《
程序员的自我修养
——链接、装载与库》读书笔记—— 3.5 链接的接口:符号
概念符号(Symbel):函数和变量符号名(SymbelName):函数名和变量名每个目标文件中都有符号表(SynbelTable),在上篇文章中提到的段表中可以找到它:其中包含有:全局符号,包括本文件中的函数,以及全局变量外部符号,本目标文件中引用但未定义的符号局部符号,主要为局部变量,在链接过程中不起作用段名(如".text",".bss"),由编译器产生,其值为该段的起始地址。行号信息,目标
朝搴夕揽
·
2022-12-12 10:33
《程序员的自我修养——链接
装载与库》读书笔记
linux
嵌入式
c语言
elf
符号
程序员的自我修养
之数学基础11:期望、方差、常见分布(均匀分布、二项分布、泊松分布、正态分布)
目录一、期望1.离散型随机变量的期望2.连续型随机变量的期望3.期望的性质二、方差和均方差1.定义2.计算三、常见分布1.均匀分布2.二项分布和几何分布3.泊松分布4.正态分布一、期望期望这个概念,初高中就学过了吧,所以这里就简单说一下定义。1.离散型随机变量的期望2.连续型随机变量的期望3.期望的性质E(cX)=xE(x)E(X+Y)=E(x)+E(Y)X,Y独立时,E(XY)=E(X)E(Y)
M&Q
·
2022-11-21 01:31
数学基础
期望
方差
泊松分布
高斯分布
正态分布
一个“
程序员的自我修养
”是什么?
于是,不禁问了问自己,作为一名程序员,一个“
程序员的自我修养
”是什么?尽管我们不一定要像尹天仇那么
阿言教编程
·
2022-10-21 16:54
编程技术
互联网
Python技术
编程语言
代码规范
软件开发
人工智能
深度学习
做个编码的专业人士
于是乎一口气从某东上下单了《重构》、《代码整洁之道》、《代码整洁之道-
程序员的自我修养
》,打算好好研读下,让经典帮自己少走弯路,尽早“优雅”起来。
愿夜有烛
·
2022-10-12 22:05
《
程序员的自我修养
--链接、装载与库》学习笔记(二)
文章目录内存隔离分段分页本系列博客是《
程序员的自我修养
–链接、装载与库》的学习笔记,本文是书中1.5部分内存在前文我们讲到了进程的概念,进程的总体目标是希望每个进程从逻辑上来看都可以独占计算机的资源。
Chiaki_0ff
·
2022-09-15 03:48
阅读笔记
其他
《
程序员的自我修养
--链接、装载与库》学习笔记(一)
本系列文章是《
程序员的自我修养
–链接、装载与库》(电子工业出版社)一书的学习摘录笔记,本文是书中1.1至1.4部分。
Chiaki_0ff
·
2022-09-15 03:18
阅读笔记
c++
开发语言
后端
程序员的自我修养
—链接、装载与库--书签目录PDF
《
程序员的自我修养
》链接:https://pan.baidu.com/s/14rGjZnE9K99Vz6a7hlLZjw提取码:wcqp
林夕07
·
2022-08-04 20:55
资源
硬件
c++
c语言
STM32链接脚本STM32F407ZETx_FLASH.ld
环境代码:STM32CUBEMX-linux版V6.5.0+STM32Cube_FW_F4_V1.27.0+Makefile方式目标SOC:STM32F407ZET6参考1、GUNBinutils2、《
程序员的自我修养
苏轼圈
·
2022-07-13 19:51
STM32
STM32链接脚本
链接脚本
SECTIONS段
预处理和宏定义【C语言】
都这里只简单讨论其执行步骤(如果想深入了解推荐《
程序员的自我修养
》)。vs2022是集成开发环境(IDE),其内部集成和编译器(cl.exe)和连接器(link.ex
爽帅_
·
2022-07-07 11:41
c++
c语言
动手调试C库-1
程序员的自我修养
第11章笔记
0.序在我的观感上来说吧,这11章写得真是灾难。灾难体现在两个地方,一个讲的实现机制比较古老了,比如.ctor段这些gcc早已经不再使用了。另一个是glibc和windows的MSVC混着讲,看着挺不舒服的(也许是因为我把前面讲windows的地方都跳过了)。为了更实际地看看C库与C编译器是如何配合,完成C代码的初始化与运行的,尝试编译一个带调试信息的C库,手动调试是一个不错的选择。1.从源码编译
passenger12234
·
2022-06-29 15:31
C与C++
c
gdb
libc
动态链接4
程序员的自我修养
第八章笔记
0.序本文承接上一篇动态链接36..dynamicsection.dynamic节是为动态链接器提供必要的链接信息(例如在RELRO中提到的DT_FLAGS指示动态链接器进行立即重定位),具体.dynmaic节的格式可以参考dynamicsection。下面列出一些接下来讨论动态库搜索时会用到的一些.dynamic节的表项。DT_SONAME项,仅在动态库中出现,内容是一个数字表示在.dynstr
passenger12234
·
2022-06-29 15:30
C与C++
编译
链接
C
动态链接2
程序员的自我修养
第七章笔记
0.序本篇文章承接上一篇动态链接13.全局符号介入单靠上面的解释,读者可能会有疑惑,既然数据a,p和printf语句在模块内部的相对地址是不变的,为什么不直接用相对pc的寻址方式拿到a,p地址呢,而非要借助.got表来绕一下弯子呢?这其实涉及到一个全局符号介入(globalsymbolinterpose)的问题。在静态链接中,我们不允许符号冲突。但是在动态链接中,默认是允许的(也可以修改链接参数改
passenger12234
·
2022-06-29 15:00
C与C++
动态链接
C
Python
程序员的自我修养
2014年,我国发布了语言法,目的就是要规范我国语言的使用,方便大家的沟通、文化的传承。语言有语法,程序也有语法,但程序的语法除了要过解释器以外,剩下的就看程序员的习惯了,这里并没有什么硬性的规定,主要是一些约定俗成的做法。首先是一些官方的推荐写法,能查到的东西我也不多说,具体可以参照Python编码规范。如果你觉得里面的内容太难记,一时半会不能背下来,那我告诉你,千万别背!这里要推荐一下我用的I
KionWong
·
2022-06-27 23:39
Python心得
Python
习惯
nginx内存池的代码实现__2019.04.13
关于系统调用的详解《
程序员的自我修养
》第12章。malloc是靠边界标识法来管理的。注意:malloc返回的地址是头下面的地址。此边界包括:该段空间的大小、是否占用。
weixin_40316053
·
2022-06-08 20:33
c++
2022金三银四下
程序员的自我修养
该不该跳槽?首先,第一个问题就是我该不该跳槽?我们跳槽的原因有很多,比如黑心老板、996、拖欠工资、倒挂等等,这些都是我们选择跳槽的理由,一般这些时候我们都会有明确的跳槽意向,这些意向来自于我们对当前的不满。因为不满而跳槽是最常见的,但是也是最容易从一个坑跳到另外一个坑,我一直记得一句PUA:“正确的跳槽并不是因为对公司的不满跑路,而是为了更好的发展”。这句话听起来有些PUA,但是也很真实,我参加
java构架师
·
2022-05-06 07:58
程序人生
职场和发展
程序人生
程序员
Python
编程语言
PE文件结构与程序装载
参考书籍:《逆向工程核心原理》《
程序员的自我修养
》文章目录一、PE文件结构(一)PE头1.DOS头2.DOS存根3.NT头4.节区头(二)PE体二、程序装载(一)相关概念1.虚拟内存2.VA与RVA3.
Captain_RB
·
2022-05-05 08:42
逆向工程
windows
逆向工程
动态链接5
程序员的自我修养
第八章笔记
0.序本文承接上一篇动态链接4,这应该是关于动态链接笔记的最后一篇了。略去了书上关于符号版本的讨论。10.linux下的动态库管理通常linux下动态库遵循命名规则libname.so.x.y.z,该动态库对应的SONAME是libname.so.x,链接时使用-lname,比如我机器上的/usr/lib/libpcap.so.1.10.1,它的SONAME则是libpcap.so.1。链接时使用
passenger12234
·
2022-03-31 11:23
C与C++
链接
动态链接
c
关于C语言中弱符号与弱引用的实际应用问题
最近在学习《
程序员的自我修养
——链接、装载与库》时,get到了一个新的知识点:弱符号与弱引用。书中简短的介绍,让我了解到弱符号的含义以及使用方式。
·
2022-03-10 10:38
一个优秀
程序员的自我修养
:不止会用代理IP那么简单
对于网络爬虫来说,使用同一个IP重复操作,必然会受到限制,这个时候必须借助代理IP的帮助,将效率和效果最大化。当然这只是网络爬虫的一小部分,如果你想更高效地爬取,就要多掌握一些操作技巧。一个优秀的程序员应该如何养成呢?以下一些建议供您参考。1.代码要写得简单、易懂、有逻辑有些人之所以要将代码写得那么复杂只是为了证明自己有写复杂代码的能力。但只有简单且逻辑化的代码才能有效工作,不但问题少而且更易扩展
疯小欣
·
2022-02-25 11:53
http
爬虫
代理IP
编程语言
大数据
一个优秀
程序员的自我修养
:当然不止会用代理ip那么简单
对于网络推广来说,必然少不了代理IP的使用,像论坛发帖、微博推广、百度问答等等,如果你想看到效果,就需要大量操作,但是同一个IP重复操作,必然会受到限制,这个时候必须使用代理IP:太阳IP软件的帮助,将效率和效果最大化。当然这只是推广过程中的一小部分,如果你想更好的去操作,就要多掌握一些操作技巧,这样才能让你更好更快速的盈利。除了用对工具、用对方法,企业对优秀的营销推广人员也是求贤若渴,每一个程序
congpao4329
·
2022-02-25 11:17
谈谈程序启动那点事
本文主要是《
程序员的自我修养
》学习笔记,并着重阐述了程序启动的流程及Mac相关的知识点;一、简介程序内存通过分段形式来直接建立虚拟地址与实际物理地址之间的映射,若内存不足需要置换出段,导致效率低下;根据程序的局部性原理
FengyunSky
·
2022-02-12 08:12
程序员的自我修养
Java多线程工具ReentrantLockConditionCountDownLatchArrayBlockingQueueThreadPoolExecutorFutureTaskCompletableFuture使用ConcurrentHashMapThreadLocalSpringBootspi机制springboot自动装配spring初始化及循环引用问题springaopspring事务
·
2022-02-04 15:20
java源码学习
i386 asm 改写为 arm64 asm
前言:最近刚读完
程序员的自我修养
-链接、装载与库一书。最后一小节教我们怎样写一个最小的CRT系统。
三三哥
·
2021-12-27 14:37
PE头详细分析
头解析NT头解析标准PE头解析可选PE头解析可选PE头结构基址代码段地址数据段地址OEP程序入口点0x03PE头解析工具编写PE头详细分析0x00前言最近我在学习LinuxPWN相关知识的时候,也是在看《
程序员的自我修养
HackLee
·
2021-11-02 13:00
程序员的自我修养
---ELF文件格式
程序员的自我修养
—ELF文件格式程序编译的基本流程 相信绝大多树科班的人的第一行代码都是下面这个helloworld程序。
binary_human
·
2021-10-04 10:07
程序员的自我修养
linux
c语言
《
程序员的自我修养
-链接-装载与库》第二章 编译与链接
0.引言对于平常的应用程序开发,我们很少需要关注编译和链接过程,因为通常的开发环境都是流行的集成开发环境(IDE),比如VisualStudio、Delphi等。这样的IDE一般都将编译和链接的过程一步完成,通常将这种编译和链接合并到一起的过程称为构建(Build)。即使使用命令行来编译一个源代码文件,简单的一句“gcchello.c”命令就包含了非常复杂的过程。IDE和编译器提供的默认配置、编译
Muten
·
2021-10-03 09:27
软件编译与调试
编译
近期的学习计划
【近期的学习目标和节点】1、数据结构和算法:(看剑指offer吧)2、
程序员的自我修养
:保持每天10页吧(先不怎么用做笔记)2021-09-15:看到37(内存不够怎么办)2021-09-16:看到40
武当霍元甲
·
2021-09-28 19:27
程序员的自我修养
—精华(elf文件、虚拟内存)
catalog程序程序我们写的程序,需要经过(编译,链接)得到最终的exe/elf(产生到磁盘上)。如果我们要运行他,必须要把他加载到内存里!因为cpu访问内存的速度要比访问磁盘,速度快千万倍cpu的位数,是指:他一次性能够进行运算的整数的宽度,因为cpu是在ALU里运算数据所以,cpu的位数其实是ALU的宽度(即,数据总线的条数)但是,cpu的位数不一定等于地址总线的条数,他等于的是数据总线的条
WChango
·
2021-09-25 11:37
C
QT
c++
程序是如何映射到内存中的
概述本文出自《
程序员的自我修养
——链接、装载与库》,属于个人学习笔记在早期的的计算机中,程序是直接运行在物理内存上的,也就是说程序在运行时所访问的地址都是物理地址。
希尔罗斯沃德_董
·
2021-08-17 22:17
iOS 应用程序加载流程分析
这里也给大家推荐一本书籍“
程序员的自我修养
”。这本书主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项。
晨曦的简书
·
2021-07-29 10:53
[Common]
程序员的自我修养
(2)
6.可执行文件的装载与进程寻址整个4GB被划分为两部分,其中操作系统本身用去了一部分:从地址0xC0000000到地址0xFFFFFFFF,共1GB;剩下的0x00000000到0xBFFFFFFF共3GB都是留给进程使用的;也就是说整个进程在执行的时候,所有的代码、数据包括通过C语言malloc()等方法申请的虚拟空间之和不可以超过3GB。程序运行就是把它加载到内存里面,但是内存经常不够用。后来
木小易Ying
·
2021-07-12 08:58
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他