前面Linux专题中关于Linux下系统编程总结了17篇博文,主要是为了提高Linux下的C编程应用能力,熟悉Linux编程应用环境,从此篇博文起开始Linux驱动的总结,后面计划加一些综合实践项目练习。
所谓指令集,可以理解成硬件对外的接口。我们运行程序是通过操作系统调度,操作系统然后让硬件去计算。
学习安卓的架构,是从操作系统的角度理解安卓。安卓使用Linux内核,但安卓的架构又与常见的Linux系统有很大的区别。我们先来回顾一下传统的Linux架构,再来看安卓的变化。 Linux系统架构 先来
为什么人能成为万物之长是因为人会制造和利用工具。那么人为什么会制造工具?在远古时期时时为了对抗自然,为了在恶劣的环境下生存下来,而现在,人制造工具是为了在人和人的对抗中取得胜利。
Linux采用C语言编写(在C中有嵌入汇编成分)。本文想要用Java这门语言在软件层面上模拟出Linux。
本章内容将讲解 Docker 虚拟化、虚拟化本质、namespace、cgroups。
我们已经学习并知道了操作系统实际上就是一款软件,一款用来管理计算机软硬件资源,为用户提供良好的执行环境的软件。假如该软件能被用户随意操作,就会有可能出现因操作不当而导致整个系统崩溃的情况。因此:操作系统是不能直接与用户沟通的。
没有虚拟化基础的童鞋可先阅读Linux阅码场前几天刊发的《KVM最初的2小时——KVM从入门到放弃(修订版) 》入门。
这篇文章是对 OSDI20 的 Best Paper hXDP: Efficient Software Packet Processing on FPGA NICs 的阅读笔记,感兴趣的同学可以点击阅读原文查看论文的 paper,slide 和 video。
操作系统_(Operating System)_是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序。根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。 对于一台计算机来说,其组成可分成四部分: 应用软件、操作系统、设备驱动、硬件;
可以通过查看CPU的规格或者使用特定的命令来检测CPU是否支持AVX2指令集。具体方法如下:
Linux操作系统提供了丰富的命令行界面和图形用户界面工具,用户可以根据自己的需求选择适合的界面进行操作。命令行界面更加灵活和高效,适合熟悉命令的用户;图形用户界面更加直观和友好,适合新手用户。
软件运行时输入单元输入内容,进入内存,CPU由控制单元和算术逻辑单元组成,控制单元控制算术逻辑单元从内存中读取数据,内存和外部存储设备进行交互,运算完毕以后输出到输出单元,完成软件的运行。
QEMU是“Quick Emulator”的缩写,是一个用C语言编写的开源虚拟化软件。本文的目的是描述本人所理解的QEMU技术架构的见解,并以此抛砖引玉。众所周知,QEMU的源代码开发文档非常稀少,描述内部结构和工作机理的文档更是凤毛麟角,一般的开发人员想要从事QEMU的开发工作,通常只能从源代码入手。因此,对于技术人员来说,了解QEMU是一项艰巨的任务。
本文以 32 位系统为例介绍内核空间(kernel space)和用户空间(user space)。
但其实这种形式我们看着是不太习惯的,我们可以指定形式输出: 格式为:date +选项 %H : 小时(00..23) %M : 分钟(00..59) %S : 秒(00..61) %X : 相当于 %H:%M:%S %d : 日 (01..31) %m : 月份 (01..12) %Y : 完整年份 (若是%y,则输出年份的后两位) %F : 相当于 %Y-%m-%d 演示:
xshell是一款支持多种网络协议,能够通过互联网远程连接主机,是一款强大的安全终端模拟软件并且具有很多创新性的设计,我们linux的学习便是通过这款软件。
一、基本概念: 1、linux系统时间和硬件时间: 系统时间:一般来说就是我们执行date命令查看到的时间,Linux系统下所有的时间调用(除了直接访问硬件时间的命令)都是使
进程切换,又称为任务切换、上下文切换、或者任务调度。本文就研究Linux内核的进程切换。我们首先理解几个概念。
上节 从一个简单的汇编程序学习汇编程序的结构以及编译链接的过程中,打印hello world的汇编程序的详细解释为:
前言:本篇内容介绍一些基本指令以及注意事项,在操作过程中切记当Linux报错时先看报错,英文不好可以使用QQ截图进行翻译,再思考、查找、研究!!
在ARM平台上,ARMv6之前,SWP和SWPB指令被用来支持对shared memory的访问:
Linux 内核最初的源码不足一万行 , 当前的 Linux 内核源码已经有两千万行 ;
本文首发于: https://blog.frytea.com/archives/539/
虚拟化技术按照其发展历史,可以分为四个阶段:硬件仿真虚拟化、完全虚拟化、半虚拟化和操作系统虚拟化。当前阶段的虚拟化技术以半虚拟化技术为主流,操作系统虚拟化是发展方向,目前主要应用在高端应用领域。下面将从每一种虚拟化技术的原理、优点、缺点和代表产品四个方面进行介绍。
中断是现代 CPU 工作方式中重要的部分。例如:当你每次在键盘上按下一个按键后,CPU 会被中断以使得 PC 读取用户键盘的输入。这个过程发生得相当快,以致于在使用体验上你不会感到任何变化或损害。
本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10693247.html
目前主要的 CPU 虚拟化技术是 Intel 的 VT-x/VT-i 和 AMD 的 AMD-V 这两种技术。
假设你正在用计算机浏览网页,当网页加载完成后你开始阅读,此时你没有移动鼠标,没有敲击键盘,也没有网络通信,那么你的计算机此时在干嘛?
chroot 命令用于在指定的根目录下运行指令。chroot 是 change root directory (更改根目录)的缩写。在 Linux 系统中,默认的目录结构是以 / 作为根目录的起点。而使用 chroot 后,系统的目录结构将会以指定的位置作为新的根目录。
虚拟主机、web服务器、数据库、对象存储等等各种服务我们都可以通过各种各样的云平台来完成。
那些不能铭记过去的人注定要重蹈覆辙。你还记得当年用Windows隐藏文件夹藏片吗? 作为一个屌丝,虚拟化技术确实意义非常重大。这个最显著的作用显然就是藏片,作为一个程序员,如果还用Windows文件隐藏功能来藏片,这实在是污辱自己和女朋友的智商,让广大码农抬不起头来做人。最早可以帮你实质藏片的手段来自VMware。 VMware这个名字就是一种牛逼,VM就是virtual machine,ware是取自Software中的ware,1999年VMware发布了它的第一款产品VMware Workstation,在那个赛扬333和白衣飘飘的时代。
文章开头必须介绍下这位github开源大佬,是腾讯的一位前辈,仓库地址:https://github.com/yifengyou,里面有他学习的各种资料,包含linux内核态、用户态、虚拟化、云原生、编程语言等分类,很震撼。大家可以看下贡献图,感受下压迫感,这位大佬大年三十都还在学习!
作者简介: 王建峰,对于技术方向(主要是嵌入式领域的OS方向的系统应用)感兴趣,最近在学习操作系统基础。同时也是某芯原厂的驱动工程师,主要是gpu领域的驱动软件。https://gitee.com/hinzer/blog 1 概念介绍 1.1 什么是操作系统? 1.2 如何理解中断机制? 1.3 如何理解系统定时? 1.4 如何理解进程控制? 1.5 如何理解内存管理? 1.6 如何理解堆栈概念? 1.7 内核在源码中的体现? 1.8 如何理解系统调用? 1.9 如何理解特权级? 2 流程分析 2.1 引导
这篇文章介绍关于Linux系统的目录结构,比较Linux系统和Windows系统目录结构的区别。我们知道在Linux中一切皆文件,包括它的硬件,声卡、硬盘等等都会映射成一个文件来管理。
本篇文章作为操作系统的入门文章,可能入门都算不上吧,毕竟操作系统太庞大和复杂了。本篇文章主要带你了解一下我们常用的操作系统环境。
来源:http://blog.csdn.net/walkingmanc/article/details/6367057
说明:super binary 超级的 二进制 许多“指令”对应的可“执行程序文件”目录,该目录文件对应指令都是"root"用户可以执行的指令普通用户不能使用该目录里的命令:
科学Sciences导读:指令集架构(Instruction-SetArchitecture, ISA)之IBM Power ISA开源应对RISC-V生态。本文介绍IBMPower ISA开源概述;RISC-V和OpenPOWER如何共存;ower(处理器)九代产品概述;IBM的POWER和Intel的X86处理器比较。关键词:指令集,指令集架构,ISA,RISC-V,x86,中央处理器(CPU),英特尔(Intel),国际商用机器(IBM),POWER PC(或者PPC),开源。分享或赞赏支持后,公号输入框内发送“Power ISA”获取本文PDF。
至此,我们已经理解了X86架构如何在硬件层面如何处理中断和异常,那么接下来,我们看看Linux内核管理这些中断和异常。
本文意在对计算机的软硬件体系结构进行梳理,包括计算机体系结构,什么是操作系统,为什么存在操作系统,操作系统如何进行管理,以及建立在这些软硬件基础上的各种提供给用户进行操作的接口。
Arm MTE(内存标记)作为Armv8.5指令集的一部分引入。MTE现在内置于Arm 最近宣布的符合Armv9 的 CPU 中,例如 Cortex-X2、Cortex-A710 和Cortex-A510。未来基于Armv9 的 CPU 也将集成 MTE。
前言:Linux基本指令学到这里也快接近尾声了,如果对前面内容还有不清楚建议回顾这两篇文章 。
领取专属 10元无门槛券
手把手带您无忧上云