操作系统开发

数据存储技术

為{幸葍}努か 提交于 2019-12-05 00:41:30
课程大纲 判断对错、名词解释、问答、计算 数据硬件组成 数据存取途径是指从数据源到目的地数据和命令传输的路径 。 数源据和目的地通常是存储器或存储设备。 介于两端之间的物理器件便组成了存取途径的硬件系统。 总线 总线是连接设备的通信通道,包括 数据总线、地址总线、控制总线 (避免多个CPU操作同一块内存)和 电源线 等 。 系统总线: 系统总线 是一条致密的高速总线、 连接CPU/Cache和系统内存 。通过总线仲裁获得总线使用权,然后在两个硬件模块间进行通信。 内存总线 IO总线: 外围设备总线( IO总线 ),与系统总线桥接,由于桥控制器控制, 连接外围设备 。桥接控制器中包含高速缓存,用以调节两条总线的速度差。 IDE总线 桥间连接总线 USB总线 PCI总线: 目前台式机与服务器所普遍使用的一种南桥与外设连接的总线技术。 SCSI总线 PCI总线: PCI ( Peripheral Component Interconnect)总线是目前台式机与服务器所普遍使用的一种南桥与外设连接的总线技术。 PCI 总线的地址总线与数据总线是分时复用的。一方面可以节省接插件的管脚数,另一方面便于实现突发数据传输。 在数据传输时,一个 PCI 设备作为发起者(主控, Initiator或 Master),而另一个 PCI 设备作为目标(从设备、 Target或 Slave)。

Docker简介

巧了我就是萌 提交于 2019-12-05 00:14:59
目录 Docker简介 是什么? 为什么会有docker的出现 docker理念 一句话总结 能干吗? 之前的虚拟机技术 容器虚拟化技术 开发/运维 -- 一次构建、随处运行 去哪下 官网 仓库 Docker简介 俗话说:工欲善其事必先利其器,知其然知其所以然,学习一个技术,需要掌握它的背景知识,技术无非就是条条框框的代码命令而已,但是需要明白它到底是什么,是有含义,有什么背景。就像足球,永远不打好基础,永远不搞懂足球理念。只会一步步的输下去。 是什么? 为什么会有docker的出现 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验 Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。 环境配置如此麻烦,换一台机器,就要重来一次,费力费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。 之前在服务器配置一个应用的运行环境,要安装各种软件,就拿正常工作的环境来说吧,Java/Tomcat/MySQL/JDBC驱动包等。安装和配置这些东西有多麻烦就不说了

linux简史

放肆的年华 提交于 2019-12-04 17:57:11
由Unix操作系统衍生系统 Linux发明人——林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds, 1969年~ ) 五个支柱 UNIX 操作系统 (1969年,Bell实验室的Ken Thompson开始利用一台闲置的 PDP-7计算机开发了一种多用户,多任务操作系统) MINIX 操作系统 (1984年,Andrew S.Tanenbaum开发了用于教学的UNIX系统,命名为Mininx) (1989年,Andrew S.Tanenbaum将Minix系统运行于x86的PC平台。 注:x86或80x86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称。而基于这种微处理器搭建起来的硬件系统就称为X86平台) GNU 计划 POSIX 标准 Internet网络 linux发行版本 (商业公司维护的发行版-----社区组织维护的发行版) RHEL 红帽(商业公司维护的发行版代表) Centos Debian(社区组织维护的发行版代表) Ubuntu 来源: https://www.cnblogs.com/alan-hqy/p/11876332.html

笔者整理的毕业生工作五年必须学会运维和开发工程师的内容

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-04 17:52:26
运维、开发工程师中级技能教程汇总2019.11.11 个人视频录制 点击查看 ,有需要的可以联系 微信codedna618    目录 前言致学习者 4 一、生活窍门类 5 l 如何播放腾讯等 vip 视频教程 5 二、 运维类 6 l 常见操作系统安装 windows server2003 6 l 常见操作系统安装 windows server208R2 6 l 常见操作系统安装 windows server2012 6 l 常见操作系统安装 windows server2016 6 l 常见操作系统安装 windows server2019 6 l Win7 IIS 安装和配置 6 l 如何使用功 QQ 远程 6 l 其他远程工具的使用 6 l IIS 实现跨磁盘文件下载 6 l 6 l Win7 tomcat 安装和配置 6 l 常见微软数据库 sqlserver2000 、 2005 、 2008 、 2012 、 2016 ( studio 客户端是独立的)安装教程(注意点和曾经遇到的问题) 6 l mysql 数据库安装教程、另外注意 C# 的插件的 mysql 驱动安装 7 l Sqlite 数据库简介和使用 7 l Sqlite 数据库导出到 sqlserver 7 l Sqlite 代码生成器的使用(个人开发的工具) 7 l 在线数据库预览工具(动态查看数据库、表

操作系统的发展史

▼魔方 西西 提交于 2019-12-04 09:06:10
操作系统的发展史 一、手工操作——穿孔卡片 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行;计算完毕,打印机输出计算结果;用户取走结果并卸下纸带(或卡片)后,才让下一个用户上机。 手工操作方式两个特点: 用户独占全机。不会出现因资源已被其他用户占用而等待的现象,但资源的利用率低。 CPU 等待手工操作。CPU的利用不充分。 20世纪50年代后期,出现 人机矛盾 。:手工操作的慢速度和计算机的高速度之间形成了尖锐矛盾,手工操作方式已严重损害了系统资源的利用率(使资源利用率降为百分之几,甚至更低),不能容忍。唯一的解决办法:只有摆脱人的手工操作,实现作业的自动过渡。这样就出现了成 批处理 。 二、批处理——磁带存储 批处理系统:加载在计算机上的一个 系统软件 ,在它的控制下,计算机能够自动地、成批地处理一个或多个用户的作业(这作业包括程序、数据和命令)。 2.1 联机批处理系统 主机与输入机之间增加一个存储设备——磁带,在运行于主机上的监督程序的自动控制下,计算机可自动完成:成批地把输入机上的用户作业读入磁带,依次把磁带上的用户作业读入主机内存并执行并把计算结果向输出机输出

计算机操作系统

别等时光非礼了梦想. 提交于 2019-12-04 06:53:43
一、操作系统引入 可能有很多同学都有碰到下面我说的这个场景,当我们花了8888大洋买了一台16G内存的专业吃鸡电脑时,打开电脑发现自己的电脑内存只有15G不到,然后就开始了吃鸡之旅。 但是如果你对你少掉的内存关心的话,你会发现并不是厂商为了节省造价成本,而这少掉的内存被某种东西给占用了,这种东西就是我们这篇文章的主角——操作系统。 二、什么是操作系统? 在了解操作系统之前,我们首先回顾下编程的目的,编程的目的是奴役计算机,取代人力。 现在想象一个这样的场景,如果你是奴隶主(人),你在黑市上买了一个奴隶(计算机),你想让这个奴隶干扫地的活,但是这个奴隶可能不明白扫地是什么意思,甚至可能都不知道你全程在逼逼啥。这个时候你可能会考虑买一个管家(操作系统),这个管家既能和你交流,也能和奴隶交流,然后你有任何命令都将由这个管家传达给奴隶。 2.1 什么是文件? 现在让我们来想象我们在计算机上打开一个文件的流程:首先我们需要开机,其次我们需要打开一个文件。可能我们所有人都会认为这没啥,但是,这个时候你需要注意,文件它是什么呢?因为我们太习以为常了,所以我们忽略了这个问题:文件是什么呢?这个时候我不得不告诉你,你可以把文件理解成一个虚拟的单位,有了这个虚拟的单位,我们不再需要考虑机械手臂的运转,你只需要文件可以双击打开、可以写入数据、可以CTRL+S保存。

计算机基础知识(一)

久未见 提交于 2019-12-04 04:41:57
基础计算机知识普及(一) 我们平常所说的“电脑”便是计算机。计算机,顾名思义便是计算用的机器。那么计算机通常计算什么呢? 我们右键“此电脑”->属性,我们可以看到一行字——2.27GHz。那么这行字,便指的就是该计算机的计算能力——每秒钟计算2.27兆次。 那么,计算机计算什么呢? 你现在在使用浏览器访问我的blog。那么,打开浏览器这个动作便是通过计算完成的。浏览器的开发者把浏览器编译为众多文件,其中包含一个.exe文件让你来打开(Windows下)。如果你使用普通的编辑器打开这个exe(不是运行),你会看到非常整齐的一排排“乱码”——这就是机器可以识别的码。机器识别这些“乱码”做出动作,这就是一种计算。 那么什么是RAM呢? 这就是我们平常说的“内存”。内存存储的是暂时的、供机器运行的文件。如果RAM过小,那么机器就会变慢。所以,RAM越大,机器越快。 你可能注意到了我在上文提到的“Windows”。这就需要引出一个概念叫做“操作系统”。 操作系统 是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。操作系统的类型非常多样,不同机器安装的操作系统可从简单到复杂

linux的前世今生

时间秒杀一切 提交于 2019-12-04 04:01:31
linux的前世今生 linux介绍 linux起源 linux厂商 一、linux是什么 linux 是一个计算机的操作系统,与 windows 类似,是一款系统软件 二、操作系统 说到操作系统其实我们首先要思考三个问题: 1 )操作系统是什么? 2 )操作系统能干什么 3 )操作系统和 QQ 、 office 又有什么区别 操作系统是什么? 操作系统首先是一个计算机程序,使用计算机语言开发,比如 C 语言、 VC 语言。是计算机硬件和应用软件的桥梁。 操作系统能干什么? 操作系统干什么的 管理硬件 管理 CPU 内存 等 驱动硬件 调用硬件 去干活 打印 扫描 管理应用程序 QQ OFFICE 游戏 硬件资源分配 QQ 啥时候用 CPU 多个程序共用硬件的分时机制 操作系统和 QQ 、 office 又有什么区别 计算机构成分为: 底层硬件、操作系统、应用软件 QQ 、 office 属于应用软件,运行需要依托操作系统,运行在操作系统之上 三、操作系统分类 按照时间先后顺序: UNIX 、 windows 、 linux 不同的系统又有:个人版、网络版 个人版: 用户桌面版,一般采用复杂指令集,对图形图像处理优势较大 网络版:服务器版,一般采用精简指令集,对数据流处理优势较大 四、linux的起源 上个世纪六十年代,那个计算机还没有很普及,只有少数人才能使用

操作系统学习记录之四:内核级线程和用户级线程

会有一股神秘感。 提交于 2019-12-04 01:45:02
内核级线程(KLT): •线程管理的所有工作由OS内核来做; • OS提供了一个应用程序设计接口API,供开发者使用KLT; • OS直接调度KLT; 内核级线程的特点: • 进程中的一个线程被阻塞了, 内核能调度同一进程的其它线程占有处理器运行; • 多处理器环境中, 内核能同时调度同一进程中多个线程并行执行; • 内核自身也可用多线程技术实现, 能提高操作系统的执行速度和效率 • 应用程序线程在用户态运行, 线程调度和管理在内核实现, 在同一进程中, 控制权从一个线程传送到另一个线程时 需要模式切换 ,系统开销较大; 用户级线程(ULT) • 用户空间运行的线程库,提供多线程应用程序的开发和运行支撑环境; • 任何应用程序均需通过线程库进行程序设计,再与线程库连接后运行; • 线程管理的所有工作都由应用程序 完成, 内核没有意识到线程的存在; 用户级线程的特点 • 所有线程管理数据结构均在进程的用户空间中, 线程切换 不需要内核模式 , 能节省模式切换开销和内核的宝贵资源; • 允许进程按应用特定需要选择调度算法, 甚至根据应用需求裁剪调度算法; • 能运行在任何OS上, 内核在支持ULT方面不需要做任何工作; • 不能利用多处理器的优点 , OS调度进程,仅有一个ULT能执行; • 一个ULT的阻塞, 将引起整个进程的阻塞; Jacketing技术 •把

浅谈单片机应用程序架构

落爺英雄遲暮 提交于 2019-12-04 01:29:52
对于单片机程序来说,大家都不陌生,但是真正使用架构,考虑架构的恐怕并不多,随着程序开发的不断增多,本人觉得架构是非常必要的。前不就发帖与大家一起讨论了一下《 谈谈怎样架构你的单片机程序 》,发现真正使用架构的并不都,而且这类书籍基本没有。 本人经过摸索实验,并总结,大致应用程序的架构有三种: 1. 简单的前后台顺序执行程序,这类写法是大多数人使用的方法,不需用思考程序的具体架构,直接通过执行顺序编写应用程序即可。 2. 时间片轮询法,此方法是介于顺序执行与操作系统之间的一种方法。 3. 操作系统,此法应该是应用程序编写的最高境界。 1. 顺序执行法: 这种方法,这应用程序比较简单,实时性,并行性要求不太高的情况下是不错的方法,程序设计简单,思路比较清晰。但是当应用程序比较复杂的时候,如果没有一个完整的流程图,恐怕别人很难看懂程序的运行状态,而且随着程序功能的增加,编写应用程序的工程师的大脑也开始混乱。即不利于升级维护,也不利于代码优化。本人写个几个比较复杂一点的应用程序,刚开始就是使用此法,最终虽然能够实现功能,但是自己的思维一直处于混乱状态。导致程序一直不能让自己满意。 这种方法大多数人都会采用,而且我们接受的教育也基本都是使用此法。对于我们这些基本没有学习过数据结构,程序架构的单片机工程师来说,无疑很难在应用程序的设计上有一个很大的提高