自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 收藏
  • 关注

原创 一篇讲透嵌入式系统内存分配方式

系列文章:一篇讲透嵌入式操作系统任务调度从需求反推设计方案,假如让你设计嵌入式系统的内存管理,你怎么设计?最简单的,用一个双链表控制,所有已分配和未分配的内存用两个双链表标识: ...

2020-06-21 20:49:19 2803

原创 一篇讲透嵌入式操作系统任务调度

进互联网公司操作系统和网络库是基础技能,面试过不去的看,这里基于嵌入式操作系统分几章来总结一下任务调度、内存分配和网络协议栈的基础原理和代码实现。处理器上电时会产生一个复位中断,接下来会...

2020-06-20 22:50:17 4880

原创 两年时间,从汽轮机厂到阿里巴巴

文章转自本人公众号:机械猿,本人之前在四川某汽轮机从事结构强度设计,目前在阿里巴巴淘宝事业部担任高级开发工程师,有机械工程同行想转行IT,或者有想入职BAT的可以找我内推~一些絮叨有幸能有华科机械的硕士同行过来咨询IT行业相关情况,这里大致总结一下个人经验。本人目前在阿里巴巴淘宝事业部从事后台开发,本科为机械设计制造及其自动化专业,硕士课题为机械结构及力学强度分析相关,使用的工具基本包...

2019-12-07 17:40:14 762 1

原创 数据库核心操作解析:order by、group by、join、union 排序分组连接合并原理详析...

一、Order 排序实现方式1. 常规排序在数据库操作里,当使用ORDER BY对查询结果进行排序时,常规排序是一种常见的处理方式。下面以selectcol1,col2,col3fromt1whereid ='xx'orderbycol2;为例,详细介绍其排序流程:步骤操作详情1从表t1中获取所有满足WHERE条件(id = 'xx')的记录。2对每条满足条件的记录,将记...

2025-02-02 13:37:21 1139

原创 湖南企业高薪榜单排名:长沙高薪企业排名出炉,求职不迷茫

长沙是内陆经济还不错的城市,产业企业丰富,适合打工人定居。这里有好多厉害的公司,不仅在各自行业里是佼佼者,还提供了超多工作岗位,是带动经济发展的关键力量。大家找工作的时候,最关心的就是薪资待遇和福利了。大型工业制造类大型工业制造类企业在长沙经济发展中占据举足轻重的地位,在国内外市场都有广泛影响力。三一重工:作为三一集团的核心企业,市值高达4000亿,2023年净利润超150亿元。其在湖南...

2025-01-30 19:03:14 1179

原创 RC和RR隔离级别下SELECT操作的读取机制及差异

RC(读已提交)和 RR(可重复读)隔离级别下不同的查询语句行为不同,读取到的数据可能不同,以下是详细分析:RC(读已提交)隔离级别1. select*from table where id = 1for update:读取类型:不管是否在事务中执行for update,这都是一种当前读,能确保读取的数据是最新的,因为for update 会对符合条件的记录加排他锁。因为RC级别下是每次执...

2025-01-18 22:55:03 402

原创 一文搞懂内存泄漏:进程内存段的 “漏洞” 与修复之道

当进程通过malloc申请虚拟内存后,操作系统不会立即为其分配物理内存,而是在首次访问时,才触发缺页异常分配内存。对普通进程来说,能看到的是内核提供的虚拟内存,这些虚拟内存还需要通过页表,由系统映射为物理内存。为平衡CPU与磁盘间的性能差异,Linux会使用Cache把文件数据缓存到内存中。内存分配用户空间内存包括多个不同类型的内存段,比如只读段、数据段、堆、栈以及文件映射段等,下面逐个分析哪些地...

2025-01-10 21:01:50 411

原创 现代Web认证与安全管理:深入理解Cookie、Session与Token

CookieCookie最主要的作用就是用于会话管理,当用户登录一个网站时,服务器会生成一个包含会话ID的Cookie并发送给浏览器,浏览器将这个Cookie保存在本地。此后,每次用户发送请求时,浏览器都会自动将这个Cookie发送给服务器,服务器通过会话ID识别用户身份,从而保持用户的登录状态。Cookie除了用于会话管理,还可以在指客户端持久存储,一般使用kv形式保存。cookie属性可以看一...

2024-12-22 22:34:56 729

原创 如何成为一名合格的程序员:实用指南

成为一名合格的程序员不仅仅意味着写出能够运行的代码,更意味着在工作中具备良好的思维方式、专业的技术能力和高效的工作方法。它不仅需要扎实的技术功底,还需要良好的工作习惯和持续的自我提升。从项目管理、代码质量到持续学习和技术输出,每一项技能和习惯都对你的职业生涯至关重要。只有通过不断思考、总结和实践,才能真正成为一名高效、专业、持续成长的程序员。1. 项目化、产品化思维:明确目标,沟通协作在工作中,我...

2024-12-01 20:53:46 362

原创 月薪4000,我在长沙待了6年(附劳动仲裁流程)

大家好,我是B哥。这是我在社交平台的第一份投稿,不为别的,就想把已经出社会的经历记录下来,也算是给大家一个参考吧。先作个背景介绍,大家就看故事开开乐嘛,有前情回顾是最好的了,能让大家作出正确的分析和判断。本人男,97年,就不说学校和自己家乡哪里。感觉在外搭之地长沙混这样也挺不好意思给学校和家乡抹黑。仔细一想我在长沙工作了6年(包含目前待业半年),其实在我看来找一份工作不难,找到好工作难。下面就开始...

2024-11-24 20:20:40 725

原创 如何通过Core Dump和GDB快速定位程序崩溃根因:从内存溢出到死锁,一文带你玩转调试...

程序在异常终止时,会触发对应的错误信号,此时操作系统会将程序的内存态内容包括程序内存、寄存器状态、调用栈等信息写入一个core文件。异常终止原因根据对应信号主要分为如下几种:1、段错误,触发信号SIGSEGV包括访问空指针、数组越界、栈溢出等;2、非法指令,触发信号SIGILL比如把一些随机数据当成指令执行:void (*func)() = ptr; // 将内存空间作为函数指针func();...

2024-11-17 16:07:11 859

原创 Linux系统性能问题排查思路(面试必备)

主要方便排查系统问题,了解性能优化的思路和方法,掌握常用的linux性能工具。CPU常用的分析CPU使用情况的工具包括top、ps和pidstat,特点为:top显示系统总体的CPU和内存使用情况,以及各个进程的资源使用情况。ps显示每个进程的运行和资源使用情况。pidstat分析每个进程 CPU 使用情况。排查CPU使用率问题时,需要区分用户CPU、系统CPU、等待I/O CPU、软中断和硬中断...

2024-11-10 20:07:59 781

原创 大学勤工俭学兼职经历

前几天带小朋友去学校逛了一圈,遇到兼职卖水的大学生(现在的大学生都是00后了),聊了一嘴,发现跟自己的兼职经历好像。第一个是担任学生干部,没有酬劳,但是有综合分加分(和奖学金挂钩)。大一受学长学姐和辅导员的影响,认为学生干部是很重要的经历。所以积极去申请了担任一个学生副干部。为了招新人,作为社恐,逼迫自己成为社牛,天天跑去人家宿舍发传单拉人头,每天被催着自学美图秀秀做各种海报打黑工。以为能打好群众...

2024-10-16 22:53:03 217

原创 面试的一些小小经验

无论何时,找到合适的满意的工作(距离住处的地理位置,薪资,工作氛围)并不是一件容易的事情。个人能力与职位的适配性永远是有误差的客观存在。十全十美难得,满足个人的个体化优先级才是客观的存在。1.投简历可以海投,但不要盲投。遇到某些XX科技/直播/互联网金融公司,可以先尝试做一下背景调查。某度某乎或者校友、朋友圈,都可以悄咪咪打探一下公司的主营业务是什么。多看看《天网》《一线》,避免被骗。尤其涉世未深...

2024-09-11 10:57:42 632

原创 程序员转行餐饮店之路:从开始到失败

之前一直有做副业的想法,比如最开始的水果摊,地铁口的烟花摆摊,都是从开始到失败。执着于摆摊的原因有两个:一是工资款如同上证指数一样,越来越低;二是为了先熟悉一下“创业”的过程。契机终于来了,我的一个远房堂弟从饭店失业了(也不能叫失业因为劳动合同都没有),问我有啥轻体力的工作机会。连续几天蹲点世贸和万达写字楼的送餐情况,顿时觉得,可能天机到了。搞个外卖店,专门送写字楼码农。主打一个现炒非预制湘菜。价...

2024-02-04 21:02:10 567

原创 职业了解:04高职校的老师

1)如何才能进入现在这个行业?大专以上的学历就可以考教师资格证,有了教师资格证就可以应聘教师岗位了。大专考取小学教师资格证,本科以上可以考取初中、高中教师资格证。不管公立还是私立都需要教师资格证。相对来说私立学校任职简单,公立学校要考编。(宇宙的尽头是考编)2)工作环境如何?(出差、人际复杂、996加班狠?)不会出差,会有培训。个人很喜欢培训,不用上课,去别的城市听讲座,包吃包住,学校工资照发。人...

2024-01-14 17:37:10 524

原创 关系型数据库设计理论及部署实现

ACID索引实现方式事务隔离级别并发场景写-写冲突MVCC数据库隐式字段读视图删表语句insert与replace区别Mysql相关参数索引扫描方式索引下推复制日志基于操作语句复制基于预写日志(WAL)复制基于行的逻辑日志复制基于触发器的复制主从同步多主复制Mysql备份数据恢复方式分布式数据库要注意的一些点缓冲buffer pool读缓冲change buffer写缓冲Doublewrite B...

2023-10-03 22:32:11 317

原创 职业了解|03师范生的编制教师之路

“初闻不解曲中意,再闻已是曲中人”。每个行业有一个共性在于,外面的人想进去,里面的人想出来。时代变化,不同的行业的细则也在变化。十五年前,有谁会预计计算机会这么火爆呢?估计大概率只会被认为计算机属于不务正业。而现在,宇宙的尽头是编制。但编制是否真的十全十美呢?本文讲述一个小学在编教师的心声。1、为什么想到读师范生我高考的那一年师范生并不受待见。因为当时大部分人都认为老师待遇低。但因为家里有亲戚是老...

2023-09-21 07:03:19 260

原创 职业观察|02:铁路维修师

高铁及地铁的发展,新生了许多之前没有的职位和专业。除了空乘/铁乘、安检人员等,大家可能相对熟悉。背后的维系工作人员其实也是一群更庞大的从业人员。本次主要介绍“铁路机务”。以下由一位铁路机务小哥讲述。首先简单介绍一下铁路系统(包括绿皮车/动车/高铁/地铁)。铁路系统主要分为五大模块。不同的模块的工作内容不一样。机务:通俗来讲就是大家熟知的火车司机以及机车头的维护与保养。(与车头接触)。工务:对于铁路...

2023-09-19 19:11:41 339

原创 职业了解:海底捞服务员

本文来自对一线海底捞服务员的浅浅了解。如有不同的海底捞从业人员,可文后留言让大家有更多的认识。前言:海底捞作为上市餐饮,其服务及管理模式都是业内出名的。一直被模仿,从未被超越。作为顾客自然感觉良好,但作为店员,是否会有一些不同的感受呢?本文将从一名海底捞的服务员的视角,感受一下这个职位的“性价比”。我是初中毕业就进入社会上“大学”了,今年30岁。从最初的洗碗工到汽车学徒,再到泥瓦匠,再到工地摔死了...

2023-09-17 11:13:47 3133

原创 码农在长沙如何流浪

前段时间,加班加到想吐。但是又没找到物美价廉的放松方式。打工人的现状:无四轮车且要带个娃到处跑。兜兜转转,骑行闪亮登场。海鲜市场的二手车,不到1000。更换了刹车片,买了新的护具,轮胎更换了一下。七七八八加起来花费2000左右。首发站是:打车去了多次的遛娃好地方--松雅湖。自配BGM:老许的歌。lan莲花。许巍的歌,是一代人(包括我)的记忆之一。《九月》《故乡》《那一年》,再到后面的《喜悦》《灵岩...

2023-09-16 13:20:50 142

原创 经典高并发服务器设计逻辑

都是面试必问的八股,不管理不理解用不用得上,背就完事了。服务器模型对于并发量比较大的服务器,即listen监听端口一直忙碌于处理新建连接的场景,一般在主线程里面accept新的客户端连接并生成新连接的socket,然后将这些新连接的socket按既定规则(如轮询、哈希等)传递给工作线程池;每个工作线程各自持有一个epollfd,管理主线程分配过来的socket事件,由这些工作线程处理新连接上的网络...

2023-06-04 00:23:14 756

原创 二线程序员的出路

最近长沙不太平。去年被动离职一拨人之后,HR一直强调降本增效,人人自危,挤走一拨人,反正会有大量内卷失败的一线程序员进来填坑。当然留就有人走,前同事除了几个出去搞培训创业(后面解散了)的之外,其他的基本上都回到一线去了。上周老学弟入职尖山湖的北大长沙数字研究院,跑过去蹭蹭饭,顺便了解了解那边的情况。事业单位就是不一样,直接在公园里面划了一片地做园区,配套健身房跟食堂。最重要的是这边重点部门都是做A...

2023-05-22 23:24:14 1761

原创 Redis设计逻辑及生产部署问题整理

数据结构redis数据结构包括:简单动态字符串SDS、链表、字典、跳跃表、整数组合、压缩列表。SDS:在增加/减少字符串时不会频繁进行内存充分配,采用了空间预分配和惰性空间释放两种优化策略。链表:链表节点使用void*保存节点值,并且可以指定属性函数,可以用来保存不同类型的结构体。将数据与操作函数封装在一起,类似C++中的类定义。字典:字典由dict结构体表征,管理两张哈希表,哈希表指向一个哈希表...

2023-05-21 22:16:11 462

原创 我读故我在:《文凭社会》读后感

现在正是一年一度的答辩季,朋友圈有各种毕业季的苦尽甘来,也有更多的彷徨无助。就业,似乎越来越卷。新来的实习生。本硕985,还有海外留学经历。这一届00后真的越来越强大了,让人汗颜。虽然,每天干的活也不比当年硕士的我实习内容高深多少。实习门槛已经是肉眼可见的严格许多。每一年都是史上最难就业季。而今年,各种声音从疫情到人口出生率都分析了一遍,包括流行的脱不下孔乙己的长衫。现实是,海底捞的服务员一个月保...

2023-05-20 21:45:53 762

原创 长沙薪资调查统计结果

还有其他交叉分析结果就不一一展示了,后面会在知乎专栏细化,同时请大家在评论区多多提点建议,完善后续的社会调查,使结果更具有参考性,更有效指导大家找到符合自身定位的工作。整体来看,540个软件信息从业人员里面,超过80%月收入过万。针对长沙上班族做了个问卷调查,收到913份有效问卷,基本可以作为长沙职场行业、年龄、薪水分布的一个重要参考。超过500人月收入过万,长沙公司开出来的薪资在内陆省会还是能打的。求职人年龄基本集中在22~28岁,工作年限集中在1~5年;

2023-04-16 18:17:25 688

原创 长沙基层公务员待遇调查结果

这里表扬一下政府部门决算的严谨性,大部上市分民企公司在财报披露里面,都会把办公耗材、办公水电费等算入人员支出里面,而政府公开决算是把人员成本和办公支出分开统计的。具体的数据测算肯定有误差,因为不同级别的人员福利津贴差距很大,而且公务员和没有编制仅有劳动合同的工作人员待遇也有差距,且本文测算没有考虑不同的扣税方法导致的收入差距,仅供参考。当然,这里是政府公开文件,跟大家身边的现象可能有偏差,大家可以以“身边统计学”计算一下,跟政府文件对比一下误差。同样,考虑到公务员待遇比合同工待遇高点,可以在这个平均数字。

2023-04-16 18:16:08 1582 1

原创 长沙房价浅谈

近期经济严峻,不少大厂都弥漫着裁员的新闻。在长沙,裁员的消息也是不少。追求群体永远青春化,大概是共同的追求。而与之对应的还有房价及楼市,相比2018年,也没有那么气势长虹了。至少摇号没有当年那么热烈了。朋友A。2018年买房,需要落户满两年或者社保两年。A看了不下10处楼盘,参与摇号摇了5-6次。河东的洋湖,河西的天健城,天心的保利,甚至望城的中粮都摇过号。奈何,基本等到ta选号的时候,已经没有房...

2023-03-12 20:52:51 212

原创 Mysql各种缓冲区的功能及之间的联系

buffer poolmysql数据存放在磁盘里面,如果每次查询都直接从磁盘里面查询,会影响性能,因此需要内存态缓存池。另外缓存池的淘汰机制不是基础LRU,而是是改进版LRU,防止大量临时缓存挤出热点数据。buffer pool读缓存分为老年代和新生代,当有新页面加入buffer pool时,插入的位置是老年代的头部,并且该页面在1s(可配置)内再次被访问的话,再被移动到新生代。淘汰时,从新生代尾...

2022-12-04 22:06:26 1186

原创 从硬件角度看服务器性能调优

bios整体配置bios系统设置Hyper Thread开启超线程,设置后lscpu命令Thread(s) per core 值显示为 2。超线程可以理解为CPU的虚拟化,一颗物理CPU并行执行两条流水线指令。确认处理器基本频率及睿频频率,部分处理器基础频率低,但是睿频不低。内核引导参数内核引导参数大体上可以分为两类:一类与设备无关,另一类与设备有关。idle参数调整CPU运行频率及状态,减少低功...

2022-12-03 21:05:02 1198

原创 多核系统的数据一致性及linux自旋锁

Cache多核同步cache分为d-cache(可读写)和i-cache(只读)。这样区分主要是为了减少资源冲突,很多中间件也是采用类似的思想,比如innodb的undo段分为insert段和update段,也是为了区分事务对两种改动的不同可见性。icache是只读的,不同cpu之间不会出现数据不一致的情况,而dcache是可读写的,不同的cpu节点会出现数据不一致的情况。当CPU更改了某条cac...

2022-11-20 23:07:19 820

转载 深入理解服务器CPU三大体系结构--SMP、NUMA、MPP

商用服务器大体可以分为三类,即对称多处理器结构 (SMP :Symmetric Multi-Processor) ,非一致存储访问结构 (NUMA :Non-Uniform Memory Access) ,以及海量并行处理结构 (MPP :Massive Parallel Processing) 。

2022-10-12 21:38:54 2632

原创 Mysql并发读写解决方案分析--MVCC

数据库并发场景所有系统的并发场景都是三种,对于数据库而言为:读-读:不存在任何问题,也不需要并发控制。读-写:有线程安全问题,可能会造成事务隔离性问题,也就是脏读,不可重复读,幻读。写-写:有线程安全问题,会存在更新丢失问题:第一类更新丢失(回滚丢失),第二类更新丢失(覆盖丢失)。事务隔离级别隔离级别:串行化SERIALIZABLE、可重复读(REPEATABLE READ)、读提交(READ C...

2022-10-04 15:54:23 1481

原创 Linux中断流程全解析

中断概念与分类CPU在执行指令时,收到某个中断信号转而去执行预先设定好的代码,执行完毕后再返回到原指令流中继续执行。根据中断的来源,中断可分为硬件中断和软件中断。硬件中断包括外设异步通知,如网络收包中断;CPU之间同步消息,也就是IPI中断。软件中断包括CPU异常,如除0异常、缺页异常;系统调用,某些系统调用依靠中断实现。缺页异常的处理可以参考:进程是如何使用内存的根据中断是否可以屏蔽,中断可分为...

2022-10-03 00:00:37 3290

转载 如何提高千万级数据库查询效率--面试必备问题

从数据库设计和sql语句分析优化逻辑。

2022-08-14 10:42:21 180

原创 父类指针释放子类对象会发生什么

一个子类对象,强转为基类指针并调用delete(基类没有析构函数),不会造成内存泄漏呢?先参考下图malloc实现方式:先了解一下new对象的过程:(1)通过operator new申请内存 (malloc),编译器都会记录这个指针申请的内存空间大小是多少,这样delete时根据这个记录信息进行释放即可。就知道删除多大空间了。(2)使用placement new调用构造函...

2022-08-14 10:09:08 800

原创 同步原语问题汇总--芒果TV进击面试

前言芒果TV中台部门位于长沙风水宝地马栏山,有同学面试给到了17k*18(四年小厂工作经验),也算长沙大厂了。线程同步是芒果tv研发岗一面必问的问题。线程同步多线程访问共享数据时,可能发生冲突。因此需要通过特定的方式来控制线程之间执行的顺序。举个例子,两个线程操作同一个变量,分为三个步骤:从内存读变量到寄存器、寄存器中赋值、将寄存器值写回内存。产生冲突的原因就在于这三个步...

2022-07-25 23:07:55 376

原创 20|鸣金收兵

立的Flag完成了100%。今天需要鸣金收兵了。有段时间每天早上一起床就想到今天应该写点啥。有种出租车一出车就背负了今日租金的感觉。今天结束了,最后一篇。Doge1-20篇的主题都是随意,写的也比较散。期间也不断看看别人怎么写的。从最初尝试到现在,认清自己不具备这个持续输出写稿的心力。要写原创的还是需要持久不断的输出。阅读,或者阅历。感受表达,观点的锤炼,自身...

2022-04-27 00:00:00 114

原创 19|雨季来临,聊些轻松的吧

今天A股下跌5%+,河西暴雨后积水明显。恍若看到郑州大雨的场景。与此同时,上海的新冠死亡病例中有疫苗接种后的病人,与既往的新闻报道有一点不同。各种辟谣还在不断上演。只能用魔幻这个词来形容。经历过一些反转反转再反转之后,本人对一些现象级的新闻已经不感冒了。除非是政策制定这类客观的“风”。但是另外一个角度,政策制定到执行,普通人几乎没有决定权。总结起来就是,很多热点对普通人意...

2022-04-26 00:02:00 223

原创 08|电商项目异地双活笔记

由InfoQ的内容品牌《技术团队访谈录·第二季--异地多活数据中心项目的来龙去脉》改编而来。概述在当今的互联网业内,不少人对“单元化”这个词已经耳熟能详。很多大型互联网系统,诸如阿里系的淘宝、支付宝、网商银行等,都已经实现了单元化架构,并从中获益匪浅。还有更多的公司,或在规划着自己的系统架构向单元化演进,或已经在单元化的建设过程中。单元化架构能给系统带来什么样的能力,又会...

2022-04-15 22:22:25 1133

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除