自学内容网 自学内容网

面试题(二)

10、公平锁和非公平锁(蒋豆芽)

11、通信机制中哪个最优

在不同的应用场景中,通信机制的“最优”取决于具体需求和环境。以下是几种常见的进程或线程间通信机制及其优缺点:

  1. 共享内存

    • 优点:速度快,因为不需要通过内核进行数据传输。适合高频率的数据交换。
    • 缺点:需要手动管理同步,容易导致竞争条件和数据不一致。
  2. 消息队列

    • 优点:提供了良好的同步机制,能够在不同进程间传递消息,适合异步通信。
    • 缺点:相对较慢,因为消息需要通过内核传输,且可能有队列的管理开销。
  3. 信号量

    • 优点:用于同步,能够控制对共享资源的访问,避免竞争条件。
    • 缺点:本身并不传输数据,主要用于控制访问。
  4. 管道和命名管道

    • 优点:简单易用,适合用于父子进程间的通信。
    • 缺点:通常是单向的,且需要通过内核进行数据传输。
  5. 套接字

    • 优点:适合跨网络通信,支持多种协议(如 TCP、UDP)。
    • 缺点:相对复杂,且性能可能受网络延迟影响。

选择建议

  • 性能要求高且在同一系统内:优先考虑共享内存。
  • 需要同步且异步处理:消息队列是不错的选择。
  • 跨网络通信:套接字是必然的选择。

综上所述,选择最优的通信机制要考虑具体的应用场景、性能需求、同步要求和实现复杂度等因素。没有绝对的“最优”方案,只有适合的解决方案。

12、说一下管道 半双工(蒋)

13、如何通信

14、虚拟内存

15、7层协议、TCP /IP 4层

16、tcp的端口值

TCP(传输控制协议)端口值是一个 16 位整数,范围从 0 到 65535,分为以下几类:

  1. 知名端口(Well-Known Ports):0 到 1023

    • 这些端口通常用于标准的服务和协议。
    • 例如:
      • HTTP: 80
      • HTTPS: 443
      • FTP: 21
      • SSH: 22
  2. 注册端口(Registered Ports):1024 到 49151

    • 这些端口由特定组织或公司注册,用于特定服务。
    • 例如:
      • MySQL: 3306
      • PostgreSQL: 5432
      • Microsoft SQL Server: 1433
  3. 动态/私有端口(Dynamic/Private Ports):49152 到 65535

    • 通常用于客户端临时使用的端口,例如客户端与服务器通信时由系统动态分配的端口。

端口值的范围和分配标准由 IANA(Internet Assigned Numbers Authority)管理。

17、DNS

18、http和https的区别

19、https对称加密 非对称加密 分别的优缺点

前者速度快,但不够安全
后者慢,但安全


原文地址:https://blog.csdn.net/SSuperwoman/article/details/142446074

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!