参考书:Modern Operating Systems, Tanenbaum, Andrew,4th Edition Pearson, 2014.
=====================
目录:
一、基本概念
二、实验环境
=====================
一、基本概念
1、Operating system (OS):
a)An OS is a large, complex software that allows users to run various applications, develop programs, and manage computer system resources effectively.
b) It acts as an intermediary between users and computer hardware, providing essential services like task scheduling, memory management, and I/O operations to ensure efficient and user-friendly operation of the system.
c) Examples of operating systems include Windows, macOS, Linux, and Unix
2、Major Functions of an OS:
a) File Management
b) Memory Management
c) Process Management
3、File management systems allow users to store information in fundamental units called 'files'. Typical tasks of the File Management System:
a) Controlling transfer of data to and from secondary storage.
b) Controlling security of file access.
c) Keeping track of storage space and maintaining file directories.
d) Provide sharing mechanisms for files
e) provide recovery and restoration mechanisms -optional
4、A major function of memory management is the implementation of virtual memory.Virtual memory may be implemented using paging and/or segmentation.
5、Some common Page replacement algorithms :
a) Least Recently Used (LRU)
b) Least Frequently Used (LFU)
c) First In First Out (F.I.F.O)
6、Segmentation is another approach to memory management, similar to Paging.
a) Paging: divides the virtual memory into fixed-size pages and the physical memory into fixed-size frames.Pages are mapped to frames using a page table.
b) Segmentation:Divides the virtual memory into variable-sized segments based on logical divisions, such as functions, objects, or data structures.Each segment has a base address and length, stored in a segment table.
7、 Typical tasks of the Process Management of OS:
a) Creating and destroying processes
b) Controlling the execution/progress of processes
c) Acting on exceptional conditions arising during the execution of processes (eg. errors, interrupts, etc)
d) Allocating hardware resources (fairly) among processes
e) Providing some form of inter-process communication(IPC)
8、An operating system may use pre-emptive or non-pre-emptive low level scheduling.
a) Non-Pre-emptive: First-In First-Out (FIFO), Shortest Job First (SJF), Priority
b) Pre-emptive: Round-robin, RR with priority, Dynamic priority
9、History of UNIX
10、 Essential Linux Commands
https://www.hostinger.com/tutorials/linux-commands
11、Von Neumann architecture is a program model that describes the architecture relevant to instruction operation. It was first published in 1945 by John von Neumann and 'consists of a single, shared memory for programs and data, a single bus for memory access, an arithmetic unit, and a program control unit' (Tan & Jiang 2019).
12、除了上面三大功能,OS其他主要功能还包括,
a) 设备管理:管理输入输出设备和驱动程序,控制设备的操作。
b) 安全和权限:保护系统资源免受未授权访问,管理用户权限和认证。
=====================
二、实验环境
1、VirtualBox :Oracle 提供的开源虚拟化软件,允许用户在单个物理计算机上运行多个操作系统实例
https://www.virtualbox.org.
2、linux镜像
https://www.osboxes.org/
https://virtualboxes.org/images/
=====================
附:计算机网络教材和工具
1、教材:Data Communications & Networks, Forouzan, Behrouz A., 5th Edition, McGraw-Hill, 2013
2、core network emulator: As an emulator, CORE builds a representation of a real computer network that runs in real time.
https://github.com/coreemu/core
3、wireshark
https://www.wireshark.org/download.html