操作系统技巧总结
操作系统复习
第1章 操作系统概论
定义:管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户方便有效的使用计算机提供良好运行环境的一种系统软件。
功能:处理器管理、存储管理、设备管理、文件管理、联网和通信管理
特性:并发性、共享性(1.透明资源共享 2.独占资源共享)、异步性
分类:批处理操作系统、分时操作系统、实时操作系统
第2章 处理器管理
进程定义:进程是具有独立功能的程序在某个数据集合上的一次运行活动,也是操作系统进行资源分配和保护的基本单位。
进程状态和转换:p73
三态模型:运行态、就绪态、等待态
五态模型:新建态、终止态提出的原因?
要求会画图,解释某些转换是不存在的。
引入多线程的动机:减少程序并发执行时所付出的时空开销,使得并发颗粒度更细、并发性更好。
线程的优点:快速线程切换、通信易于实现、减少管理开销、并发程度提高
PCB(Process Control Block)进程控制块:进程存在的唯一标识,是操作系统用来记录和刻画进程状态及环境信息的数据结构,是进程动态特征的汇集,也是操作系统掌握进程的唯一资料结构和管理进程的主要依据。p75
TCB的概念?
动态/静态 优先级?
处理器调度:p101 例题
先来先服务算法
最短作业优先算法(概念)
最短剩余时间优先算法
最高响应比优先算法(概念)
第3章 同步、通信与死锁
佰恩斯坦条件?Bernstein(简答)
死锁:一组进程因争夺资源陷入永远等待的状态。
饥饿:一个可运行进程由于其他进程总是优先于它,而被调度程序无限期的拖延而不能被执行。
进程同步:为完成共同任务的并发进程基于某个条件来协调其活动,因为需要在某些位置上排定执行的先后次序而等待、传递信号或消息所产生的协作制约关系。
临界区:并发进程中与共享变量有关的程序段。
临界资源:共享变量所代表的资源,即一次仅能供一个进程使用的资源。
临界区调度的三个原则(互斥使用,有空让进;忙则要等,有限等待;择一而入,算法可行。):
一次至多只有一个进程进入临界区内执行。
如果已有进程在临界区中,试图进入此临界区的其他进程应等待。
进入临界区内的进程应在有限时间内退出,以便让等待队列中的一个进程进入。
实现临界区管理的软件算法:
分析
是否会出问题?
何时出?
实现临界区管理的硬件设施:
关中断
测试并设置指令
对换指令
信号量与PV操作:p134
pv操作定义(一元、一般)?
综合题:
5位哲学家就餐问题 (无死锁解法) p139
生产者-消费者问题(多对多、多缓冲区)p140
读者-写者问题 p141
理发师问题 p142
和尚打水
死锁
定义:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期的陷入僵持的局面。
产生的条件:
互斥条件
占有和等待条件
不剥夺条件
循环等待条件
死锁避免:综合题15分
银行家算法的数据结构 p163
算法描述:
T0时刻的安全序列
进程P1请求资源(能否满足?为什么?)
第4章 存储管理
程序的链接种类:(填空)
静态链接
动态链接
运行时链接
静态地址重定位:由装载程序实现装载代码的加载和地址转换,把它装入分配给进程的内存指定区域,其中的所有逻辑地址修改成内存物理地址。
动态地址重定位:由装载程序实现装载代码模块的加载,把它装入分配给进程的内存指定区域,但对链接程序处理过的应用程序的逻辑地址则不做任何修改,程序内存起始地址被置入硬件专用寄存器——重定位寄存器。程序执行过程中,每当cpu引用内存地址(访问程序和数据)时,由硬件截取此逻辑地址,并在它被发送到内存之前加上重定位寄存器的值,以便实现地址转换。
分页存储管理 p206
概念:
页面
页框
逻辑地址
内存页框表
页表
分页/分段 动态链接库的实现原理?(说明+画图)
综合题:
给出逻辑地址,求物理地址?(画图)
给出逻辑地址、页面大小,计算物理地址?
分段和分页的比较(简答):
分段是信息的逻辑单位,由源程序的逻辑结构及含义所决定,是用户可见的,段长由用户根据需要来确定,段起始地址可从任何内存地址开始。在分段方式中,源程序(短号、段内位移)经链接装配后仍保持二维(地址)结构,引入目的是满足用户模块化程序设计的需要。
分页是信息的物理单位,与源程序的逻辑结构无关,是用户不可见的,页长由系统(硬件)确定,页面只能从页大小的整数倍位置开始。在分页方式中,源程序(页号、页内位移)经链接装配后变成一维(地址)结构,引入目的是实现离散分配并提高内存利用率。
缺页中断率 p223
概念:不成功访问次数?
画图,求缺页中断率? p229
第5章 设备管理
I/O控制方式:(填空)
轮询方式
中断方式
DMA方式
通道方式
缓冲技术:
单缓冲 p265
双缓冲 p266
搜查定位:(例题、简答)p270
先来先服务算法
最短查找时间优先算法
扫描算法
电梯调度算法
循环扫描算法
参考书目:
-《操作系统教程(第五版)》费翔林、骆斌著 高等教育出版社
Atas ialah kandungan terperinci 操作系统技巧总结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Tidak dapat mengakses MySQL dari terminal mungkin disebabkan oleh: perkhidmatan MySQL tidak berjalan; ralat perintah sambungan; kebenaran yang tidak mencukupi; sambungan blok firewall; Ralat fail konfigurasi MySQL.

Sebab utama mengapa anda tidak boleh log masuk ke MySQL sebagai akar adalah masalah kebenaran, ralat fail konfigurasi, kata laluan tidak konsisten, masalah fail soket, atau pemintasan firewall. Penyelesaiannya termasuk: periksa sama ada parameter pengikat di dalam fail konfigurasi dikonfigurasi dengan betul. Semak sama ada kebenaran pengguna root telah diubahsuai atau dipadam dan ditetapkan semula. Sahkan bahawa kata laluan adalah tepat, termasuk kes dan aksara khas. Semak tetapan dan laluan kebenaran fail soket. Semak bahawa firewall menyekat sambungan ke pelayan MySQL.

Untuk membuat pangkalan data Oracle, kaedah biasa adalah menggunakan alat grafik DBCA. Langkah -langkah adalah seperti berikut: 1. Gunakan alat DBCA untuk menetapkan DBName untuk menentukan nama pangkalan data; 2. Tetapkan SYSPASSWORD dan SYSTEMPASSWORD kepada kata laluan yang kuat; 3. Tetapkan aksara dan NationalCharacterset ke Al32utf8; 4. Tetapkan MemorySize dan Tablespacesize untuk menyesuaikan mengikut keperluan sebenar; 5. Tentukan laluan logfile. Kaedah lanjutan dibuat secara manual menggunakan arahan SQL, tetapi lebih kompleks dan terdedah kepada kesilapan. Perhatikan kekuatan kata laluan, pemilihan set aksara, saiz dan memori meja makan

MySQL boleh mengendalikan pelbagai sambungan serentak dan menggunakan multi-threading/multi-pemprosesan untuk menetapkan persekitaran pelaksanaan bebas kepada setiap permintaan pelanggan untuk memastikan bahawa mereka tidak terganggu. Walau bagaimanapun, bilangan sambungan serentak dipengaruhi oleh sumber sistem, konfigurasi MySQL, prestasi pertanyaan, enjin penyimpanan dan persekitaran rangkaian. Pengoptimuman memerlukan pertimbangan banyak faktor seperti tahap kod (menulis SQL yang cekap), tahap konfigurasi (menyesuaikan max_connections), tahap perkakasan (meningkatkan konfigurasi pelayan).

MySQL mempunyai versi komuniti percuma dan versi perusahaan berbayar. Versi komuniti boleh digunakan dan diubahsuai secara percuma, tetapi sokongannya terhad dan sesuai untuk aplikasi dengan keperluan kestabilan yang rendah dan keupayaan teknikal yang kuat. Edisi Enterprise menyediakan sokongan komersil yang komprehensif untuk aplikasi yang memerlukan pangkalan data yang stabil, boleh dipercayai, berprestasi tinggi dan bersedia membayar sokongan. Faktor yang dipertimbangkan apabila memilih versi termasuk kritikal aplikasi, belanjawan, dan kemahiran teknikal. Tidak ada pilihan yang sempurna, hanya pilihan yang paling sesuai, dan anda perlu memilih dengan teliti mengikut keadaan tertentu.

MySQL dan MariaDB boleh dipasang serentak pada pelayan tunggal untuk memenuhi keperluan projek yang berbeza untuk versi atau ciri pangkalan data tertentu. Butiran berikut perlu diberi perhatian kepada: nombor pelabuhan yang berbeza; direktori data yang berbeza; peruntukan sumber yang munasabah; Keserasian versi pemantauan.

MySQL tidak boleh berjalan secara langsung di Android, tetapi ia boleh dilaksanakan secara tidak langsung dengan menggunakan kaedah berikut: menggunakan pangkalan data ringan SQLite, yang dibina di atas sistem Android, tidak memerlukan pelayan yang berasingan, dan mempunyai penggunaan sumber kecil, yang sangat sesuai untuk aplikasi peranti mudah alih. Sambungkan jauh ke pelayan MySQL dan sambungkan ke pangkalan data MySQL pada pelayan jauh melalui rangkaian untuk membaca dan menulis data, tetapi terdapat kelemahan seperti kebergantungan rangkaian yang kuat, isu keselamatan dan kos pelayan.

Linux sesuai untuk pelayan, persekitaran pembangunan, dan sistem tertanam. 1. Sebagai sistem pengendalian pelayan, Linux stabil dan cekap, dan sering digunakan untuk menggunakan aplikasi konkurasi tinggi. 2. Sebagai persekitaran pembangunan, Linux menyediakan alat arahan dan sistem pengurusan pakej yang cekap untuk meningkatkan kecekapan pembangunan. 3. Dalam sistem tertanam, Linux ringan dan disesuaikan, sesuai untuk persekitaran dengan sumber yang terhad.
