腾讯云&腾讯视频

23 篇文章 11 订阅 ¥19.90 ¥99.00
这篇博客详细介绍了腾讯云和腾讯视频面试中涉及的操作系统(OS)和计算机网络(计网)的知识点,包括Java变量的传递方式、栈和堆的区别、虚拟内存、中断、系统调用、malloc、线程与进程、TCP与UDP的区别、三次握手四次挥手、网络中断处理、以及代码实现如翻转链表、手写单例等。同时,讨论了进程内存空间、内存管理、分页保护机制、mmap和进程通信方式。面试者在复盘中表达了对OS和计网深入理解的挑战。
摘要由CSDN通过智能技术生成

腾讯云

Java

1. Java变量的传递方式

值传递

OS

2. 栈和堆的区别(OS层面)

栈是先进后出的,一般是OS自动分配的,堆是由程序员自己申请的

函数定义的变量是在栈上,譬如malloc是在堆上

操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,会遍历该链表,寻找第一个空间大于所申请空间(可能是其他算法)的堆结点,然后将该结点从空闲结点链表中删除,并将该结点的空间分配给程序

3. 虚拟内存

虚拟内存为了扩大进程对内存的使用空间,主要有页表置换算法

opt,fifo,lru

4. 中断

中断分为多种,分别有物理中断,虚拟中断等等

中断可以实现进程之间的通信,分页中断还可以进行虚拟内存的页面交换

5. 系统调用

系统调用即System Call,为了扩充机器功能、增强系统能力、方便用户使用而在内核中建立的过程(函数)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值