宝宝要发挥作为媛媛的优势,在csdn的help下小伙伴们姐姐带你飞!
先来一个小菜:
职业规划
面试是为什么,只是挣饭钱吗?我见过很多优秀的人、不仅工资高重要的是快乐,反思自己,为什么他们那么快乐,他们工资高(流下没有技术的眼泪)开个玩笑,面试之前一定要明晰自己的职业规划:自己想成为谁、目前的活法会让自己成为谁?如果你想成为自己,那么厉害了,这么自恋的你一定要努力、回首往事时让自己傲娇哦
我反省自己,从工作经验来说,对项目的整体规划、管理推荐比较感兴趣,在任务推动、协调沟通方面比较突出的表现,所以我的职业规划是成为一名让人民(家人)骄傲的技术经理,谢谢大家
好的、下一位……此处省略*个字
进程与线程
进程与线程,这个真的是老生常谈到你不知道他是多么的重要,由点及面可以说到天荒地老,不要紧张,有时候天荒地老 眨眼就到
进程:系统资源分配的最小单位,拥有独立的数据空间
线程:程序执行的最小单位,共享进程的数据空间,当然作为独立的thing也有自己的空间
线程调度:下面的这些台词多少在zk、nginx、kafka上也都是排面,所以学会了是不是有些以一敌百的小确幸
时间片轮询、先来先服务、优先级调度、多级反馈队列及高响应比优先调度
线程切换步骤:
上下文切换,redis为神马是单线程,kafka为什么……这个切换借助某物实现起来也不难,理解也还是可以,不信、且听分解
进程间通信:
1、管道pipe:管道是半双工通信,数据在有亲缘关系(父子)进程间单向流动
2、命名管道FIFO:半双工通信,无亲缘关系也可以通信
3、消息队列messageQueue:双向通信,全局链表,节点保存数据报的类型和内容,消息队列标识符标记
4、共享存储sharedMemory:由一个进程创建,将同一物理内存映射到不同进程虚拟地址空间中,这样就不需要用户态与内核态的来回切换还有数据拷贝(是不是很ok),直接被多个进程访问的内存也是危险,你争我抢、完整的人进去 四分五裂的出来,还是要保证原子性,如何实现?信号量、互斥锁,牛奶咖啡冰淇淋了解一下
5、信号量semaphore:无论如何花里胡哨,说计数器多好,东西就这么少、你想要问一下信号量有没有资格!是的,控制多个进程对共享资源的访问和同一进程不同线程同步的利器,数组元素+1 -1 了解一下
6、套接字socket:不同机器间的进程通信,机器哦不是进程
7、信号sinal:进程间、同一进程不同线程间同步手段
携程、抱歉,是协程:比线程更轻量级的存在,特殊函数、协程间串行执行
在用户态调整,切换由程序决定进行硬件上下文的切换,更加轻量化、切换代价自然比线程上下文切换低很多
进程切换时机操作系统的策略,含全局目录、内核栈、硬件上下文、切换内容存内存中,so用户态到内核态到用户态
线程切换由操作系统决定,含内核栈和硬件上下文,切换内容保存在内核栈中
谢谢亲们,今天呐咱们就到这,散了吧