摘要:
本章前言:本章讲如何利用VS和QT来创建一个基本的QOpenGLWidget窗口和有关联的三个核心函数,因为版本更新可能会有大同小异,但基本的不会有变换,有了QT的帮助,我们不需要下载opengL、glsl、cmake只需要下载一个qt和使之跟vs链接的小插件即可,注意在下载qt的时候,记得按照op 阅读全文
摘要:
内核态的出现,让计算机系统的权力向操作系统高度集中了。 操作系统分出内核态和用户态,就是为了进行不同等级的权限管理, 从而更好的适应多用户多任务并发的工作环境。 用户态和内核态的来源 在早期的单进程单用户操作系统中,是不存在两种用户态的。 随着进程和用户的出现,当时的计算机面临着一个重要问题,就是如 阅读全文
摘要:
2.2 追求并发的极致-线程概论 为了追求程序运行之间的并发性,计算机科学家们发明了进程。为了进一步的追求进程内部的并发性,工程师们又提出了线程。 正是线程的出现,给予了程序员更多地操纵OS的自由,可惜大多数程序员承担不起这种责任。 1.线程的诞生——将进程进一步细分 进程作为操作系统资源分配的最小 阅读全文
摘要:
2.1 动为进程,静为程序 -进程概论 问1:发明进程的原因? 早在20世纪60年代,进程的思想就已经被IBM的工程师们构想出来,并且一直延续到今天。当时的计算机面临着,一段时间内要轮转并发执行多个任务的要求,这要求各个程序之间占据的内存空间互不干扰,程序通过统一的程序编号进行访问控制。 但是在编写 阅读全文
摘要:
1.4 操作系统的其余功能 操作系统除了虚拟化、并发、存储管理三个主要功能,还有许多子功能,我主要介绍几种常见的功能比如 稳定性 稳定性是决定一个操作系统能否被人们接受使用的关键。 linux系统被广泛使用的原因之一,就是在运行网络服务时候稳定性好 高性能 虽然虚拟化、并发等功能十分有用,但是维持这 阅读全文
摘要:
1.3 操作系统的第三个功能——存储管理功能 作者zobol:关于操作系统概论-存储管理功能,我给出下列问题: 一般来讲,制约我们计算机使用快慢感觉的瓶颈,不在于CPU的计算速度(正常情况下,你上个网是不可能跑满的),而在于你购买的存储器的性能。 现代计算机从以CPU核心转到以存储器为核心的原因之一 阅读全文
摘要:
1.2 操作系统的第二个功能——并发功能 在虚拟化技术的基础上,我们可以实现并发功能。 问1:什么是并发功能?并发功能是必要的吗? 粗略地讲,并发功能就是同时做多件事情的能力。 现实中我们遇到的很多问题,都是可以同时计算的,如果我们的计算机操作系统有并发功能那么就可以节省时间,比如GPU的诞生。此外 阅读全文
摘要:
1.1 操作系统的第一个功能——虚拟化硬件资源 问1:操作系统一般处于计算机系统的哪一个位置? 操作系统处于计算机硬件和软件层的交汇处,操作系统本身是一种软件,它负责管理所有在该计算机系统下的硬件资源,并且向上提供抽象接口。 问2:管理硬件资源为什么要单独交给操作系统? 因为这个世界上有数万家硬件厂 阅读全文
摘要:
malloc函数负责向计算机申请确定大小的内存空间。 free函数负责释放malloc的申请空间。 (1)函数原型 void free(void *_Memory); void * malloc(size_t _Size) (2)头文件 stdlib.h (3)功能 malloc负责申请size_t 阅读全文
摘要:
strncpy()函数,用于两个字符串值的复制。 (1)函数原型 char *strncpy(char * _Dest,const char * _Source,size_t _Count); (2)头文件 string.h (3)功能 将从const char * _Source到'\0'结尾的字 阅读全文