[oeasy]python031_[趣味拓展]unix起源_Ken_Tompson_Ritchie_multics

2024-08-27 23:04

本文主要是介绍[oeasy]python031_[趣味拓展]unix起源_Ken_Tompson_Ritchie_multics,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 [趣味拓展]unix起源_Ken_Tompson_Ritchie_multics 🥋

回忆上次内容

  • 上次 动态设置了 断点
  • 断点 可以把代码
  • 切成一段一段的
  • 可以 更快地调试
  • 调试的目的 是 去除 bug
  • 别害怕 bug
  • 一步步 总能找到 bug
  • 这 就是 程序员基本功
  • 调试 debug
  • 在bug出现的时候
  • 甚至还没有出现操作系统
  • 那操作系统
  • 是怎么开始有的呢??🤔

出现

  • 1960年以前
  • 计算机中的 任务
  • 都是 以独占的方式执行

图片描述

  • 批处理 命令
  • batch
  • 把指令都提前写好
  • 进入cpu一把执行结束

分时算法

  • 1960年
  • Dartmouth 出现分时算法
  • cpu分时系统
  • Compatible Time-Sharing System

图片描述

  • 可以让主机
  • 同时 面对多个终端
  • 以非独占的方式
  • 轮流使用cpu时间片

操作系统

  • 多任务、多用户的操作系统
  • 诞生

图片描述

  • 贝尔实验室、通用电气、MIT
  • 也想要制作 基于超级主机 的
  • 分时操作系统

multics

  • 联合系统开发计划
  • multics
  • 启动

图片描述

两人

  • 项目组里面有两个打工人
  • Kenneth Thompson
  • Dennis Ritchie

图片描述

  • 在 multics项目主机Ge635上
  • 自制游戏的 《space travel》

《space travel》

  • 模拟物理环境
  • 在各个星球上着陆的游戏
  • 根据质量、周期、引力弓之类的
  • 在太阳系穿梭

图片描述

暴风雨

  • multics很注重
  • 多用户
  • 多任务
  • 多层次
  • 但是
  • 则惑
  • 想要得越多
  • 越不容易聚焦

图片描述

  • 1969 年
  • 发生金融动荡
  • 这个商业项目
  • 由于进度不可控
  • 最终被裁撤

两人

  • 项目组被裁撤后
  • 贝尔实验室中
  • 无所事事的两人

图片描述

  • 主机Ge635没了
  • 游戏也没法玩了

新的希望

  • Thompson希望能搞到一个PDP系列主机
  • 好继续玩star travel
  • 他写报告 申请买一个PDP-10
  • 大概需要 12万美元
  • 结果是 请求被驳回

图片描述

  • Thompson 并没有放弃寻找
  • 不久之后
  • 发现了意外之喜

unix

  • Thompson 在实验室角落发现
  • 有一台几乎全新的PDP-7
  • 1964年生产的

图片描述

  • Thompson 利用multics中积累的经验
  • 开始做操作系统
  • Thompson
  • 拉上 Ritchie
  • 在 multics 文件系统的基础上
  • 实现了 文件读写

unix

  • 目标
  • 只有一个
  • 为了 玩游戏
  • 少则得

图片描述

  • 这个系统
  • 被戏称为 unics
  • 和multics项目的相比
  • 最大的特点就是
  • 非常简单
  • 抱一为天下式
  • 如何 让计算机和这些文件
  • 进行互动呢?

三周

  • Thompson 的妻子
  • 休了三周假
  • 带着1岁的儿子回娘家

图片描述

  • Thompson
  • 有了三周不受打扰的工作时间

三周做了 一个操作系统 

  • 三周目任务

图片描述

  • 第1周. 实现了 shell 环境
  • 第2周. 实现了 editor 编辑器
  • 第3周. 实现了 assembly compiler 汇编语言 编译器

操作系统

  • 这个世界从此上出现了
  • 一种叫 操作系统的东西
  • operating system

图片描述

  • 操作系统
  • 在纯硬件 裸金属 上 建立了 软件环境
  • 为 具体应用 提供 基础

multics模拟器

  • 今天可以去模拟multics

图片描述

总结

  • 这次我们了解了unix系统
  • 在multics项目失败后
  • 汤普森和里奇
  • 为了 玩游戏
  • 自制了 unix
  • 这个世界从此有了
  • 操作系统
  • operating system
  • os

图片描述

  • 这个os有什么用吗?🤔
  • 咱们下次再说👋
  • 蓝桥->oeasy 教您玩转 python_Python - 蓝桥云课
  • github->https://github.com/overmind1980/oeasy-python-tutorial
  • gitee->oeasy教您玩转python教程: 面向零基础初学者的简明易懂的 Python3 入门课程,对没有编程经验的同学也非常友好。在vim下从浅入深,逐步学习。从基础入门学习到爬虫。
  • 031操作系统是怎么来的

这篇关于[oeasy]python031_[趣味拓展]unix起源_Ken_Tompson_Ritchie_multics的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1113036

相关文章

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第

列举你能想到的UNIX信号,并说明信号用途

信号是一种软中断,是一种处理异步事件的方法。一般来说,操作系统都支持许多信号。尤其是UNIX,比较重要应用程序一般都会处理信号。 UNIX定义了许多信号,比如SIGINT表示中断字符信号,也就是Ctrl+C的信号,SIGBUS表示硬件故障的信号;SIGCHLD表示子进程状态改变信号;SIGKILL表示终止程序运行的信号,等等。信号量编程是UNIX下非常重要的一种技术。 Unix信号量也可以

安卓玩机工具------小米工具箱扩展工具 小米机型功能拓展

小米工具箱扩展版                     小米工具箱扩展版 iO_Box_Mi_Ext是由@晨钟酱开发的一款适用于小米(MIUI)、多亲(2、2Pro)、多看(多看电纸书)的多功能工具箱。该工具所有功能均可以免root实现,使用前,请打开开发者选项中的“USB调试”  功能特点 【小米工具箱】 1:冻结MIUI全家桶,隐藏状态栏图标,修改下拉通知栏图块数量;冻结

多线程并发拓展

死锁 死锁是指两个或两个以上的进程,因争夺资源而造成一种互相等待的作用,如果没有外力作用它们都将无法推进下去,此时我们就称系统进入死锁状态 死锁必要条件 互斥条件:进程对所分配的资源进行排他性的使用,在一段时间内某资源只有一个资源占用,如果此时还有其它进程请求资源,那么请求者只能等待 请求和保持条件:进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源已被其它资源占用,此时请求进程

【unix高级编程系列】线程

引言 我们知道unix进程中可以有多个线程,进程中的线程可以访问该进程的所有组成部分。并且CPU的调度单元就是线程。这就面临一个问题:当进程中的临界资源需要在多个线程中共享时,如何解决一致性问题? 本文将从线程的概念、线程的使用方式、unix提供哪些方式解决一致性问题进行介绍,加深对线程的理解。 线程概念 线程的优点: 简化代码结构。比如在业务上为每种事件类型分配单独的处理线程,可以

Python 爬虫入门 - 基础数据采集流程拓展

在网络爬虫的世界里,数据就是一切。通过爬虫技术,你可以自动化地收集各种类型的公开数据,从文本和图片到复杂的结构化信息,这些数据为各类分析和应用提供了基础。 本教程将引导你深入了解爬虫可以采集的数据种类,如何有效地获取这些数据,并探讨如何使用代理服务来规避限制与增强爬虫的灵活性。无论是初学者还是有经验的开发者,这些知识都将帮助你在网络数据采集中更加游刃有余。 文章目录 可采集的数据基本操作

linux的nohup命令的用法。在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 在程序结尾来让程序自动运行。比如我们要运行mysql在后台: /usr/local

在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台: /usr/local/mysql/bin/mysqld_safe –user=mysql &。可是有很多程序并不想mysqld一样,这样我们就需要nohup命令,怎样使用nohup命令呢?这里讲解nohup命令的一些用法。 nohup /root/

Python趣味编程

文章目录 系列文章每日十练案例1:打印“Hello, World!”案例2:计算两个数的和案例3:求解输入的数字平方案例4:判断数字的奇偶性案例5:计算阶乘案例6:检查列表中的最大值案例7:列表中的元素求和案例8:反转字符串案例9:字典中的键值对遍历案例10:生成随机数 系列文章 序号直达链接表白系列1Python制作一个无法拒绝的表白界面2Python满屏飘字表白代码3

【Unix编程】进程间通信(IPC)

进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。 一、管道 管道,通常指无名管道,是 UNIX 系统IPC最古老的形式。 1、特点: 它是半双工

Unix与Linux的关系

Unix 和 Linux 之间有着密切的历史和技术联系,尽管它们是两个独立的操作系统。 Unix 的历史 Unix 的历史可以追溯到1969年,当时 AT&T 的贝尔实验室的工程师肯·汤普逊(Ken Thompson)和丹尼斯·里奇(Dennis Ritchie)开始开发 Unix 操作系统。Unix 设计之初是为了方便进行程序开发工作,它强调的是多用户、多任务的能力,以及良好的文件系统支持。