您的位置:首页 > 其它

技术之路

2016-05-03 10:53 162 查看
基本算法 排序(快速,)

设计模式 单例模式

数据库 SQL 存储过程 redis mongodb

编程语言 C++

操作系统:进程与线程,互斥与同步,死锁。页表,虚存。

计算机网络:TCP/IP 4层结构。TCP,UDP,IP。

===进程,线程===

一个程序运行起来,就是一个进程,有进程号。进程类似于一个房间,进程之间内存隔离。

一个进程可以包含多个线程。各个线程之间共享一个进程的空间。

多线程编程涉及对共享资源的竞争。

解决的方法有,互斥锁,条件,信号量。

互斥是信号量的一种特殊情况。当信号量n=1时,就是互斥锁。

条件的用法是 wait和 broadcast

=== 死锁 ===

循环等待

资源互斥

== 进程间通信 IPC==

1,环境变量。因为子进程复制父进程的环境变量,这就造成了一次通信的机会。

2,命令行参数, 传递给子进程。

3,管道通信。可以双向通信。进程A写入,进程B读取。

4,共享内存

5,基于socket的进程间通信机制

6,信号量。 如 kill

=== 页表 ===

逻辑地址到物理地址的转化,离散存储在内存块中。

http://blog.sina.com.cn/s/blog_af0899010101bsts.html

=== 虚存 ===

虚拟内存。为了扩充内存,只将程序需要的页和段写入内存,剩余的在硬盘上存着。特征:不连续。

=== TCP/IP 4层结构 ===

数据链路层-网络层-传输层-应用层。

http://blog.csdn.net/whuslei/article/details/6667471/

=== 单例模式 ===

单例模式,就是一个对象,只想实例化一个。getInstance().关键是,不能出现多个。比如连接数据库的handle,一个就够了。多了浪费。

参考 http://www.cnblogs.com/zuoxiaolong/p/pattern2.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: