Unit 3 Operating System Text A Operating System An operating system acts as an intermediary between the user of a computer and computer hardware. The purpose of an operating system is to provide an environment in which a user can execute programs in a convenient and efficient manner. An operating system is a software that manages the computer hardware. The hardware must provide appropriate mechanisms to ensure the correct operation of the computer system and to prevent user programs from interfering with the proper operation of the system. 1. Definition * An operating system is a program that controls the execution of application programs and acts as an interface between the user of a computer and the computer hardware. * A more common definition is that the operating system is the program running at all times on the computer (usually called the kernel), with all else being application programs. * An operating system is concerned with the allocation of resources and services, such as memory, processors, devices, and information. The operating system correspondingly includes programs to manage these resources, such as a traffic controller, a scheduler, memory management module, I/O programs, and a file system. 2. Functions of Operating System Operating system performs three functions: * Convenience: An OS makes a computer more convenient to use. * Efficiency: An OS allows the computer system resources to be used in an efficient manner. * Ability to evolve: An OS should be constructed in such a way as to permit the effective development, testing and introduction of new system functions at the same time without interfering with service. 3. Types of Operating Systems An operating system performs all the basic tasks like managing file, process and memory. It acts as manager of all the resources. It becomes an interface between user and machine. 3.1 Batch Operating System This type of operating system does not interact with the computer directly. Advantages of batch operating system: * Multiple users can share the batch systems. * The idle time for batch system is very less. * It is easy to manage large work repeatedly in batch systems. Disadvantages of batch operating system: * Batch systems are hard to debug. * It is sometime costly. * The other jobs will have to wait for an unknown time if any job fails. 3.2 Time-Sharing Operating System Each task is given some time to execute, so that all the tasks work smoothly. Each user gets time of CPU as they use single system. These systems are also known as multitasking systems. The task can be from single user or from different users as well. The time that each task gets to execute is called time slice. After this time interval is over, OS switches over to next task. Advantages of time-sharing OS: * Each task gets an equal opportunity. * Less chances of duplication of software. * CPU idle time can be reduced. Disadvantages of time-sharing OS: * Reliability problem. * One must take care of security and integrity of user programs and data. * Data communication problem. 3.3 Distributed Operating System This type of operating system is a recent advancement in the world of computer technology and is being widely accepted all over the world and with a great pace. Various autonomous interconnected computers communicate with each other using a shared communication network. Independent systems possess their own memory unit and CPU. These are referred to as loosely coupled systems or distributed systems. The processors of these systems differ in size and function. The major benefit of working with this type of operating system is that it is always possible that one user can access the files or software which is not actually present on his system but on some other system connected within this network. Advantages of distributed operating system: * Failure of one will not affect the other network communication, as all systems are independent from each other. * Electronic mail increases the data exchange speed. * Since resources are being shared, computation is highly fast and durable. * Load on host computer is reduced. * These systems are easily scalable as many systems can be easily added to the network. * Delay in data processing is reduced. Disadvantages of distributed operating system: * Security problem due to sharing. * Some messages can be lost in the network system. * Overloading is another problem in distributed operating systems. * If there is a database connected on local system and many users accessing that database through remote or distributed way then performance becomes slow. * The databases in network operating is more difficult to administrate than single user system. 3.4 Network Operating System These systems run on a server and provide the capability to manage data, users, groups, security, applications, and networking functions. This type of operating system allows shared access of files, printers, security, applications, and other networking functions over a small private network. One more important aspect of network operating systems is that all the users are well aware of the underlying configuration and of all other users within the network, their individual connections etc., and that's why these computers are popularly known as tightly coupled systems. Advantages of network operating system: * Highly stable centralized servers. * Security concerns are handled through servers. * New technologies and hardware upgradation are easily integrated to the system. * Server access are possible remotely from different locations and types of systems. Disadvantages of network operating system: * Servers are costly. * User has to depend on central location for most operations. * Maintenance and updates are required regularly. 3.5 Real-Time Operating System This type of OS serves the real-time systems. The time interval required to process and respond to inputs is very small. This time interval is called response time. Real-time systems are used when time requirements are very strict like missile systems, air traffic control systems, robots etc. There are two types of real-time operating systems. * Hard real-time systems: These OSs are meant for the applications that time constraints are very strict and even the shortest possible delay is not acceptable. These systems are built for saving life like automatic parachutes or air bags which are required to be readily available in case of any accident. Virtual memory is almost never found in these systems. * Soft real-time systems: These OSs are for applications that for time-constraint is less strict. Advantages of RTOS: * Maximum consumption: Maximum utilization of devices and system, thus more output from all the resources. * Task shifting: Time assigned for shifting tasks in these systems is very less. For example, in older systems it takes about 10 micro seconds in shifting one task to another and in latest systems it takes 3 micro seconds. * Focus on application: Focus on running applications and less importance to applications which are in queue. * Real time operating system in embedded system: Since the size of programs is small, RTOS can also be used in embedded systems like in transport and others. * Error free: These types of systems are error free. * Memory allocation: Memory allocation is best managed in this type of system. Disadvantages of RTOS: * Use heavy system resources: Sometimes the system resources are not so efficient and they are expensive as well. * Complex algorithms: The algorithms are very complex and difficult for the designer to write on. * Device driver and interrupt signals: It needs specific device drivers and interrupt signals to response earliest to interrupts. * Thread priority: It is not good to set thread priority as these systems are very less prone to switching tasks. Examples of real-time operating systems are scientific experiments, medical imaging systems, industrial control systems, weapon systems, robots, air traffic control systems, etc. New Words intermediary [??nt??mi:d??r?] adj.中间人的;居间的;媒介的 n.中间人;媒介 environment [?n?vɑ?r?nm?nt] n.环境,外界 convenient [k?n?vi:n??nt] adj.方便的 prevent [pr??vent] v.防止,阻止 definition [?def??n??n] n.定义;规定;解释 kernel [?k?:nl] n.核;核心;要点 allocation [??l??ke??n] n.配给,分配 correspondingly [?k?r??sp?nd??l?] adv.相对地,比照地 controller [k?n?tr??l?] n.管理者;控制者;(机器的)控制器 scheduler ['?edju:l?] n.调度程序,日程安排程序 module [?m?dju:l] n.模块;组件 convenience [k?n?vi:n??ns] n.方便,便利 efficient [??f??nt] adj.有效率的;(直接)生效的;能干的 ability [??b?l?t?] n.能力,才能 evolve [??v?lv] vt.使发展;使进化 vi.发展 introduction [??ntr??d?k?n] n.采用,引进 perform [p??f?:m] v.执行,履行,运行 smoothly [?smu:el?] adv.平滑地;流畅地;平稳地 opportunity [??p??tju:n?t?] n.机会 duplication [?dju:pl?'ke??n] n.复制;重复;成倍 reliability [r??lɑ??'b?l?t?] n.可靠,可靠性 integrity [?n?tegr?t?] n.完整性 advancement [?d?vɑ:nsm?nt] n.前进,进步;提升,升级 autonomous [?:?t?n?m?s] adj.自治的,有自主权的 interconnect [??nt?k??nekt] v.互相连接,互相联系 possess [p??zes] vt.拥有;掌握 distributed [d?s'tr?bju:t?d] adj.分布式的 independent [??nd??pend?nt] adj.自主的,不关联的 exchange [?ks?t?e?nd?] n.交换;交易 vt.交换,互换,调换 vi.交换,替换 computation [?k?mpj??te??n] n.计算 durable [?dj??r?bl] adj.耐用的,耐久的;持久的;长期的 n.耐用品,耐久品 host [h??st] n.主机 scalable ['ske?l?bl] adj.可升级的 message [?mes?d?] n.信息;消息 v.给……发消息;给……留言 overload [???v??l??d] [???v?l??d] vt.使负担太重;使超载;超过负荷 n.过量,超负荷 administrate [?d'm?n?stre?t] v.管理,支配 aspect [??spekt] n.方面;面貌 configuration [k?n?f?g??re??n] n.布局,构造;配置 tightly [?tɑ?tl?] adv.紧紧地,坚固地,牢固地 centralized [sentr?lɑ?zd] adj.集中的 upgradation [??pɡre??de??n] n.升级,改善,提高 remotely [r??m??tl?] adv.远程地 real-time ['ri:l'tɑ?m] adj.(计算机)即时处理的,实时的 interval [??nt?vl] n.间隔 respond [r??sp?nd] vi.做出反应,响应,回应 strict [str?kt] adj.精确的;严格的 robot [?r??b?t] n.机器人;遥控装置;自动机 constraint [k?n?stre?nt] n.强制;限制;约束 acceptable [?k?sept?bl] adj.可接受的;令人满意的 accident [??ks?d?nt] n.意外事件;事故 consumption [k?n?s?mp?n] n.消耗 utilization [?ju:t?la?'ze??n] n.利用,使用,效用 thread [θred] n.线程 prone [pr??n] adj.易于……的;有……倾向的 Phrases operating system 操作系统 act as 担当……,起……的作用; 充当 interfere with 干扰 be concerned with ... 涉及……,与……有关 file system 文件系统 be constructed in ... 用……构造 batch operating system 批处理操作系统 multiple user 多用户 idle time 空闲时间 time-sharing operating system 分时操作系统 single system 单系统 multitasking system 多任务系统 single user 单用户 time slice 时间片 switch over 切换,变换,转换 take care of 照顾;对付;抵消 distributed operating system 分布式操作系统 electronic mail 电子邮件 single user system 单用户系统 network operating system 网络操作系统 private network 私有网络 tightly coupled system 紧耦合系统 response time 响应时间 air traffic control system 航空交通管制系统;空中交通管制系统 virtual memory 虚拟内存 micro second 微秒 embedded system 嵌入式系统 interrupt signal 中断信号 thread priority 线程优先权 Abbreviations I/O (Input/Output) 输入/输出 RTOS (Real-Time Operating System) 实时操作系统 Text A参考译文 操 作 系 统 操作系统充当计算机用户和计算机硬件之间的中介。操作系统的目的是提供一种环境,在该环境中用户可以方便且有效地执行程序。 操作系统是管理计算机硬件的软件。硬件必须提供适当的机制,以确保计算机系统的正确运行并防止用户程序干扰系统的正常运行。 1. 定义 * 操作系统是控制应用程序执行的程序,并且充当计算机用户和计算机硬件之间的接口。 * 更为常见的定义是,操作系统是始终在计算机上运行的程序(通常称为内核),而所有其他程序都是应用程序。 * 操作系统与资源和服务(例如内存、处理器、设备和信息)的分配有关。操作系统相应地包括用于管理这些资源的程序,例如流量控制器、调度程序、内存管理模块、I/O程序和文件系统。 2. 操作系统的功能 操作系统执行三个功能: * 便利性:操作系统使计算机更易于使用。 * 效率:操作系统让计算机系统资源被高效地使用。 * 进化能力:操作系统的构建方式应在不干扰服务的同时,允许有效地开发、测试和引入新的系统功能。 3. 操作系统的类型 操作系统执行所有基本任务,例如管理文件、进程和内存。它充当所有资源的管理者。它成为用户和机器之间的接口。 3.1 批处理操作系统 此类操作系统不会直接与计算机交互。 批处理操作系统的优点: * 多个用户可以共享批处理系统。 * 批处理系统的空闲时间非常短。 * 在批处理系统中易于重复管理大型的工作。 批处理操作系统的缺点: * 批处理系统难以调试。 * 有时很昂贵。 * 如果任何作业失败,其他作业将必须等待未知的时间。 3.2 分时操作系统 每个任务都有一定的执行时间,这样所有任务都能顺利进行。每个用户使用单个系统时都会获得CPU时间。这些系统也称为多任务系统。该任务可以来自单个用户,也可以来自不同用户。每个任务执行的时间称为时间片。在此时间间隔结束后,操作系统将切换到下一个任务。 分时操作系统的优势: * 每个任务都有平等的机会。 * 复制软件的机会更少。 * 可以减少CPU空闲时间。 分时操作系统的缺点: * 可靠性问题。 * 必须注意用户程序和数据的安全性和完整性。 * 数据通信问题。 3.3 分布式操作系统 这种类型的操作系统是计算机技术领域的最新进展,并且正在全世界范围内快速地被广泛接受。各种自主互联的计算机使用共享的通信网络相互通信。独立的系统拥有自己的存储单元和CPU。这些被称为松耦合系统或分布式系统。这些系统的处理器在大小和功能上有所不同。使用这种类型的操作系统的主要好处是,用户总是可以访问自己的系统中实际上没有、但与该网络连接的其他系统上具有的文件或软件。 分布式操作系统的优点: * 一个系统的故障不会影响另一网络的通信,因为所有系统都是相互独立的。 * 电子邮件可以提高数据交换速度。 * 由于共享资源,计算非常快速又持久。 * 减轻了主机上的负载。 * 这些系统易于扩展,因为许多系统可以轻松添加到网络中。 * 减少了数据处理的延迟。 分布式操作系统的缺点: * 共享引起的安全问题。 * 某些消息可能会在网络系统中丢失。 * 重载是分布式操作系统中的另一个问题。 * 如果本地系统上已连接数据库,并且许多用户通过远程或分布式方式访问该数据库,则执行会变慢。 * 网络操作中的数据库比单用户系统难以管理。 3.4 网络操作系统 这些系统在服务器上运行,并提供管理数据、用户、组、安全性、应用程序和联网的功能。这种类型的操作系统允许通过小型专用网络共享访问文件、打印机、安全性、应用程序和其他网络功能。网络操作系统的另一个重要方面是,所有用户都清楚底层配置以及网络中的所有其他用户、它们的单独连接等,这就是这些计算机被普遍称为紧耦合系统的原因。 网络操作系统的优点: * 高度稳定的集中式服务器。 * 通过服务器处理安全问题。 * 新技术和硬件升级很容易集成到系统中。 * 可以从不同位置和类型的系统远程访问服务器。 网络操作系统的缺点: * 服务器价格昂贵。 * 对于大多数操作,用户必须依靠中央节点。 * 定期需要维护和更新。 3.5 实时操作系统 这种类型的操作系统服务于实时系统。处理和响应输入所需的时间间隔很小。该时间间隔称为响应时间。 当时间要求非常严格时,可以使用实时系统,例如导弹系统、空中交通管制系统、机器人等。 有两种实时操作系统: * 硬实时系统:这些操作系统适用于时间限制非常严格,甚至最短的延迟都不可以接受的应用。这些系统是为挽救生命而设计的,例如自动降落伞或安全气囊,它们在发生任何事故时都必须随时可用。在这些系统中几乎找不到虚拟内存。 * 软实时系统:这些操作系统适用于时间限制不太严格的应用程序。 实时操作系统的优势: * 消耗效率最大化:设备和系统的利用率最高,能够从所有资源获得更多输出。 * 任务转移:在这些系统中分配给转移任务的时间非常少。例如,在较旧的系统中,将一项任务转移到另一项任务大约需要10微秒,而在最新的系统中,则需要3微秒。 * 关注应用程序:关注正在运行的应用程序,而对排队的应用程序不太重视。 * 嵌入式系统中的实时操作系统:由于程序很小,因此实时操作系统也可以在嵌入式系统中使用,例如在传输系统和其他系统中。 * 无错误:这些类型的系统没有错误。 * 内存分配:在此类系统中内存分配最好管理。 实时操作系统的缺点: * 使用大量的系统资源:有时系统资源效率不高,而且资源也很昂贵。 * 复杂的算法:算法非常复杂,设计人员难以编写。 * 设备驱动程序和中断信号:需要特定的设备驱动程序和中断信号来最早响应中断。 * 线程优先级:不便设置线程优先级,因为这些系统不太容易切换任务。 实时操作系统的示例是科学实验、医学成像系统、工业控制系统、武器系统、机器人、空中交通管制系统等。 Text B What Is Linux Linux is the best-known and most-used open source operating system. As an operating system, Linux is the software that sits underneath all of the other software on a computer, receiving requests from those programs and relaying these requests to the computer's hardware. Here we use the term "Linux" to refer to the Linux kernel, and the set of programs, tools, and services that are typically bundled together with the Linux kernel to provide all of the necessary components of a fully functional operating system. Some people, particularly members of the Free Software Foundation, refer to this collection as GNU/Linux, because many of the tools included are GNU components. However, not all Linux installations use GNU components as a part of their operating system. Android, for example, uses a Linux kernel but relies very little on GNU tools. 1. How Does Linux Differ from Other Operating Systems In many ways, Linux is similar to other operating systems you may have used before, such as Windows, OS X, or iOS. Like other operating systems, Linux has a graphical interface and types of software you are accustomed to using on other operating systems, such as word processing applications. In many cases, the software's creator may have made a Linux version of the same program you use on other systems. If you can use a computer or other electronic device, you can use Linux. But Linux is different from other operating systems in many important ways. First, and perhaps most importantly, Linux is open source software. The code used to create Linux is free and available to the public to view, edit, and - for users with the appropriate skills - to contribute to. Linux is also different in that, although the core pieces of the Linux operating system are generally common, there are many distributions of Linux, which include different software options. This means that Linux is incredibly customizable, because not just applications, such as word processors and web browsers, can be swapped out, Linux users can also choose core components, such as which system displays graphics and other user-interface components. 2. What Is the Difference Between UNIX and Linux You may have heard of UNIX, which is an operating system developed in the 1970s at Bell Labs by Ken Thompson, Dennis Ritchie, and others. UNIX and Linux are similar in many ways. They both have similar tools for interfacing with the systems, programming tools, filesystem layouts, and other key components. However, UNIX is not free. Over the years, a number of different operating systems have been created that attempted to be "UNIX-like" or "UNIX-compatible," but Linux has been the most successful, far surpassing its predecessors in popularity. 3. Who Uses Linux You're probably already using Linux, whether you know it or not. Depending on a user survey, between one- and two-thirds of the web pages on the Internet are generated by servers running Linux. Companies and individuals choose Linux for their servers because it is secure, and you can receive excellent support from a large community of users, in addition to companies like Canonical, SUSE, and Red Hat, which offer commercial support. Many of the devices you own, such as Android phones, digital storage devices, personal video recorders, cameras, wearables, and more, probably also run Linux. Even your car has Linux running under the hood. 4. Who "Owns" Linux By virtue of its open source licensing, Linux is freely available to anyone. However, the trademark on the name "Linux" rests with its creator, Linus Torvalds. The source code for Linux is under copyright by its many individual authors, and licensed under the GPLv2 license. Because Linux has such a large number of contributors from across multiple decades of development, contacting each individual author and getting them to agree to a new license is virtually impossible, that Linux remaining licensed under the GPLv2 in perpetuity is all but assured. 5. How Was Linux Created Linux was created in 1991 by Linus Torvalds, a then-student at the University of Helsinki. Torvalds built Linux as a free and open source alternative to Minix, another UNIX clone that was predominantly used in academic settings. He originally intended to name it "Freax", but the administrator of the server Torvalds used to distribute the original code named his directory "Linux" after a combination of Torvalds' first name and the word UNIX. 6. How Can I Contribute to Linux Most of the Linux kernel is written in the C programming language, with a little bit of assembly and other languages sprinkled in. If you're interested in writing code for the Linux kernel itself, a good place to get started is in the Kernel Newbies FAQ, which will explain some of the concepts and processes you'll want to be familiar with. But the Linux community is much more than the kernel, and it needs contributions from lots of other people besides programmers. Every distribution contains hundreds or thousands of programs that can be distributed along with it, and each of these programs, as well as the distribution itself, need a variety of people and skill sets to make them successful, including: * Testers to make sure everything works well on different configurations of hardware and software, and to report the bugs when it does not. * Designers to create user interfaces and graphics distributed with various programs. * Writers who can create documentation, how-tos, and other important text distributed with software. * Translators to take programs and documentation from their native languages and make them accessible to people around the world. * Packagers to take software programs and put all the parts together to make sure they run flawlessly in different distributions. * Disseminators to spread the word about Linux and open source in general. * And of course developers to write the software itself. 7. How Can I Get Started Using Linux There's some chance you're using Linux already and don't know it, but if you'd like to install Linux on your home computer to try it out, the easiest way is to pick a popular distribution that is designed for your platform (for example, laptop or tablet device) and give it a shot. Although there are numerous distributions available, most of the older, well-known distributions are good choices for beginners because they have large user communities that can help answer questions if you get stuck or can't figure things out. Popular distributions include Debian, Fedora, Mint, and Ubuntu, but there are still many others. New Words relay [?ri:le?] n.传递;继电器 vt.转播,传达 service [?s?:v?s] n.服务 bundle [?b?ndl] n.捆 vt.额外免费提供(设备等),(尤指出售计算机时)赠送软件 foundation [fa?n?de??n] n.基础;基金(会) creator [kr??e?t?] n.创造者,创作者 contribute [k?n?tr?bju:t] v.贡献出;出力 incredibly [?n?kred?bl?] adv.难以置信地,很,极为 customizable ['k?st?ma?z?bl] adj.可定制的,用户化的 compatible [k?m?p?t?bl] adj.兼容的,相容的 predecessor [?pri:d?ses?] n.前任,前辈;原有事物,前身 popularity [?p?pj??l?r?t?] n.普及,流行 survey [?s?:ve?] vt.调查 n.调查(表);测量 Android [??ndr??d] n.安卓操作系统 hood [h?d] n.车篷;引擎罩 vt.罩上;覆盖 licensing ['la?sns??] v.批准,许可,颁发执照 trademark [?tre?dmɑ:k] n.(注册)商标 copyright [?k?p?ra?t] n.版权,著作权 virtually [?v?:t?u?l?] adv.实际上,实质上,事实上,几乎 perpetuity [?p?:p??tju:?t?] n.永久,永恒,永远 assured [?????d] adj.确定的 clone [kl??n] n.&v.克隆 predominantly [pr??d?m?n?ntl?] adv.占主导地位地;显著地;占优势地 concept [?k?nsept] n.观念,概念,观点,思想 community [k??mju:n?t?] n.社区;社会团体 skill [sk?l] n.技能,技巧 tester [?test?] n.测试员 designer [d??zɑ?n?] n.设计师;设计者 accessible [?k?ses?bl] adj.可理解的;易接近的 flawlessly ['fl?:l?sl?] adv.无瑕地,完美地 disseminator [d?'sem?ne?t?] n.传播者 numerous [?nju:m?r?s] adj.很多的,许多的 Phrases open source 开源 receive from 从……获得,收到(某物) Free Software Foundation 自由软件基金会 graphical interface 图形界面 be accustomed to ... 习惯于 electronic device 电子设备 be different from ... 不同于 web browser 网页浏览器,网络浏览器 Bell Lab 贝尔实验室 by virtue of ... 凭借……的力量,由于…… rest with 在于,取决于 a little bit 一点点 be familiar with 熟悉,认识 make sure 确保 native language 母语 get stuck 陷入僵局,抛锚,卡住 figure out 弄明白;解决;想出;计算出 Abbreviations GPL (GNU General Public License) GNU通用公共授权 FAQ (Frequently Asked Questions) 常见问题,频繁问到的问题 Text B参考译文 什么是Linux Linux是最著名、使用最广泛的开源操作系统。作为操作系统,Linux是一种软件,它位于计算机上所有其他软件的底层,可以接收来自这些程序的请求并将这些请求转发到计算机的硬件。 在这里,我们使用术语“Linux”来指代Linux内核以及通常与Linux内核捆绑在一起的程序、工具和服务集合,它们为全功能的操作系统提供了所有必要组件。有些人,特别是自由软件基金会的成员,将此集合称为GNU/Linux,因为其中包含的许多工具都是GNU组件。但是,并非所有Linux安装都将GNU组件用作其操作系统的一部分。例如,Android使用Linux内核,但几乎不依赖GNU工具。 1. Linux与其他操作系统有何不同 在许多方面,Linux类似于你以前使用过的其他操作系统(例如Windows,OS X或iOS)。与其他操作系统一样,Linux具有图形界面和你习惯在其他操作系统上使用的软件类型(例如文字处理应用程序)。在许多情况下,软件的创建者可能已经为你在其他系统上使用的同一程序制作了Linux版本。如果你会使用计算机或其他电子设备,则可以使用Linux。 但是Linux在许多重要方面与其他操作系统有所不同。首先,也许是最重要的是,Linux是开源软件。用于创建Linux的代码是免费的,可供公众查看、编辑,并且具有适当技能的用户也可为此做出贡献。 尽管Linux操作系统的核心部分很常见,但Linux仍然具有特色。Linux有许多发行版本,其中包括不同的软件选项。这意味着Linux有极佳的可定制性,因为不仅可以替换应用程序(例如文字处理器和网页浏览器),Linux用户还可以选择核心组件,例如显示图形的系统和其他用户界面组件。 2. UNIX和Linux有什么区别 你可能已经听说过UNIX,它是Ken Thompson、Dennis Ritchie等人在20世纪70年代于贝尔实验室开发的操作系统。UNIX和Linux在许多方面都相似。它们都具有类似的工具,用于与系统、编程工具、文件系统布局和其他关键组件进行交互。但是,UNIX不是免费的。多年来,已经创建了许多尝试成为“类UNIX”或“UNIX兼容”的不同操作系统,但是Linux一直是最成功的,远远超过了其前任。 3. 谁使用Linux 无论你是否知道,你可能已经在使用Linux。根据用户调查,因特网上三分之一至三分之二的网页是由运行Linux的服务器生成的。 公司和个人为其服务器选择Linux的原因在于,它是安全的,除了Canonical、SUSE和Red Hat等提供商业支持的公司之外,还可以从广大用户社区获得出色的支持。 你拥有的许多设备(例如Android手机、数字存储设备、个人录像机、照相机、可穿戴设备等)都有可能在运行Linux。甚至你的汽车都在运行Linux。 4. 谁“拥有”Linux 由于其开源许可,任何人都可以免费使用Linux。但是,名称“Linux”的商标属于其创建者Linus Torvalds。Linux的源代码的版权属于许多个人作者,并已获得GPLv2许可。由于Linux在数十年的发展中出现了大量的贡献者,因此几乎不可能联系每个单独的作者并让他们同意新的许可,因此几乎可以肯定Linux仍在GPLv2下永久获得许可。 5. Linux是如何创建的 Linux是由Linus Torvalds于1991年创建,当时他是赫尔辛基大学的学生。Torvalds将Linux构建为Minix的免费、开源的替代品,Minix是UNIX的一个克隆版本,主要用于学术场合。他原本打算将其命名为“Freax”,但是Torvalds曾经用来分发原始代码的服务器管理员将Torvalds的名和UNIX组合,把他的目录命名为“Linux”。 6. 如何为Linux贡献力量 大多数Linux内核都是用C编程语言编写的,并使用了一些汇编语言和其他语言。如果你有兴趣为Linux内核本身编写代码,那么入门的好地方是Kernel Newbies FAQ,它将解释你想熟悉的一些概念和过程。 但是Linux社区不仅仅是内核,它还需要除了程序员以外的许多其他人的贡献。每个发行版都包含成百上千个可以与之一起发行的程序,并且每个程序以及发行版本身都需要各种人员和技能来使其成功,包括: * 测试人员,以确保一切都可以在不同的硬件和软件配置上正常运行,并在无法正常运行时报告错误。 * 设计人员创建随各种程序一起分发的用户界面和图形。 * 写作者创建文档、操作指南以及随软件分发的其他重要文本。 * 译者把用他们的母语写成的程序和文档翻译为其他语言,供世界各地的人们使用。 * 打包者把软件程序与其他所有部分捆绑在一起,以确保它们在不同发行版中都能正常运行。 * 传播者通常会传播有关Linux和开源的信息。 * 当然,开发人员也可以自己编写软件。 7. 如何开始使用Linux 你可能已经在使用Linux,但你并不知道,但是如果你想在家用计算机上安装Linux进行试用,最简单的方法是选择一种针对你的平台(例如笔记本计算机或平板计算机设备)的流行发行版,然后试一试。尽管有很多可用的发行版,但是大多数较早的知名发行版对于初学者来说都是不错的选择,因为它们拥有庞大的用户群体,如果你遇到困难或者无法解决问题时他们可以帮助你解决问题或遇到麻烦时回答问题。流行的发行版包括Debian、Fedora、Mint和Ubuntu,但还有许多其他发行版本。 Exercises [Ex. 1] Answer the following questions according to Text A. 1. What does an operating system act as? What is the purpose of an operating system? 2. What is an operating system concerned with? 3. How many functions does an operating system perform? What are they? 4. What are the advantages of batch operating system? 5. What are the disadvantages of time-sharing OS? 6. What is the major benefit of working with distributed operating system? 7. What is one more important aspect of network operating systems? 8. What are the disadvantages of network operating system? 9. What are hard real-time systems meant for? 10. What are the disadvantages of RTOS? [Ex.2] Answer the following questions according to Text B. 1. What is Linux? 2. What is first, and perhaps most important about Linux? 3. Why is Linux incredibly customizable? 4. When and where was Unix developed? And by whom? 5. Why do companies and individuals choose Linux for their servers? 6. Why is contacting each individual author and getting them to agree to a new license virtually impossible? 7. When and by whom was Linux created? How came the name Linux? 8. What is most of the Linux kernel written in? 9. What do testers do? 10. Why are most of the older, well-known distributions good choices for beginners? [Ex. 3] Translate the following terms or phrases from English into Chinese and vice versa. 1. distributed operating system 1. 2. interrupt signal 2. 3. multitasking system 3. 4. tightly coupled system 4. 5. distributed operating system 5. 6. n.配给,分配 6. 7. adj.自治的,有自主权的 7. 8. n.布局,构造;配置 8. 9. n.模块;组件 9. 10. n.可靠,可靠性 10. [Ex. 4] Translate the following sentences into Chinese. OS An operating system (OS) is the program that, after being initially loaded into the computer by a boot program, manages all of the other application programs in a computer. The application programs make use of the operating system by making requests for services through a defined application program interface (API). In addition, users can interact directly with the operating system through a user interface such as a command line or a graphical user interface (GUI). An operating system can perform the following services for applications: * In a multitasking operating system, where multiple programs can be running at the same time, the OS determines which applications should be run in what order and how much time should be allowed for each application before giving another application a turn. * It manages the sharing of internal memory among multiple applications. * It handles input and output to and from attached hardware devices, such as hard disks, printers and ports. * It sends messages to each application or interactive user (or to a system operator) about the status of operation and any errors that may have occurred. * It can offload the management of batch jobs (for example, printing) so that the initiating application is freed from this work. * On computers that can provide parallel processing, an operating system can manage how to divide the program so that it runs on more than one processor at a time. All major computer platforms (hardware and software) require an operating system, and operating systems must be developed with different features to meet the specific needs of various form factors. A mobile OS allows smartphones, tablet PCs and other mobile devices to run applications and programs. An embedded operating system is specialized for use in the computers built into larger systems, such as cars, traffic lights, digital televisions, ATMs, airplane controls, point of sale (POS) terminals, digital cameras, GPS navigation systems, elevators, digital media receivers and smart meters. A network operating system (NOS) is a computer operating system that is designed primarily to support workstation, personal computer, and, in some instances, older terminals that are connected on a local area network (LAN). A real-time operating system (RTOS) is an operating system that guarantees a certain capability within a specified time constraint. For example, an operating system might be designed to ensure that a certain object was available for a robot on an assembly line. [Ex. 5] Fill in the blanks with the words given below. users functions different commands desktop provide system run clicking operating OS The operating system (OS) is the most important program that runs on a computer. Every general-purpose computer must have an operating 1 to run other programs and applications. Computer operating systems perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the storage drives, and controlling peripheral devices, such as printers. For large systems, the operating system has even greater responsibilities and powers. It is like a traffic cop - it makes sure that different programs and 2 running at the same time do not interfere with each other. The operating system is also responsible for security, ensuring that unauthorized users do not access the system. 1. A Software Platform for Applications Operating systems 3 a software platform on top of which other programs, called application programs, can run. The application programs must be written to run on top of a particular 4 system. Your choice of operating system, therefore, determines to a great extent the applications you can run. 2. Classification of Operating Systems * Multi-user: Allows two or more users to 5 programs at the same time. Some operating systems permit hundreds or even thousands of concurrent users. * Multiprocessing: Supports running a program on more than one CPU. * Multitasking: Allows more than one program to run concurrently. * Multithreading: Allows 6 parts of a single program to run concurrently. * Real time: Responds to input instantly. 3. User Interaction with the OS As a user, you normally interact with the operating system through a set of 7 . The commands are accepted and executed by a part of the operating system called the command processor or command line interpreter. Graphical user interfaces allow you to enter commands by pointing and 8 at objects that appear on the screen. 4. Mobile Operating Systems In the same way that a desktop OS controls your 9 or laptop computer, a mobile operating system is the software platform on top of which other programs can run on mobile devices, however, these systems are designed specifically to run on mobile devices such as mobile phones, smartphones, PDAs, tablet computers and other handhelds. The mobile OS is responsible for determining the 10 and features available on your device, such as thumb wheel, keyboards, WAP, synchronization with applications, email, text messaging and more. The mobile OS will also determine which third-party applications (mobile apps) can be used on your device. Online Resources 二维码 内 容 计算机专业常用语法(3):动词不定式 在线阅读(1):UNIX (UNIX操作系统) 在线阅读(2):Network Operating Systems (网络操作系统) ?? ?? ?? ??