Giter Club home page Giter Club logo

stemha.github.io's Introduction

stemha.github.io's People

Contributors

stemha avatar

Watchers

 avatar

stemha.github.io's Issues

Linux文件系统注册、安装与卸载 - STEMHA's Blog

https://stemha.github.io/2020/08/16/Linux%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E6%B3%A8%E5%86%8C%E3%80%81%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%B8%E8%BD%BD/

概述 当内核被编译时,就已经确定了可以支持哪些文件系统,这些文件系统在系统引导时,在 VFS 中进行注册。如果文件系统是作为内核可装载的模块,则在实际安装时进行注册,并在模块卸载时注销。 VFS的初始化函数用来向VFS注册,即填写文件注册表file_system_type数据结构。每一个文件系统类型在注册表中有一个登记项,记录该文件系统的类型名、文件系统特性、指向对应的VFS超级块读取函数的地址

Linux-VFS中的数据结构 - STEMHA's Blog

https://stemha.github.io/2020/08/12/Linux-VFS%E4%B8%AD%E7%9A%84%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/#more

前言VFS(虚拟文件系统)四大对象:struct super_block 超级块、struct inode 索引节点、struct dentry 目录项、struct file 文件对象VFS采用的是面向对象的设计**,使用一簇数据结构来代表通用文件对象。所以内核中的数据结构都使用C结构体实现。 超级块super_block对象,代表一个具体的已安装文件系统。 索引节点inode对象,代表一个具

Linux模块(modules) - STEMHA's Blog

https://stemha.github.io/2020/07/13/Linux%E6%A8%A1%E5%9D%97%EF%BC%88modules%EF%BC%89/#more

前言Linux 是一个整体式的内核(Monolithic Kernel)结构,也就是说,整个内核是一个单独的、非常大的程序。 从实现机制来说,我们又把它划分为5个子系统(前一篇文章有介绍),内核的各个子系统都提供了内部接口(函数和变量),这些函数和变量可供内核所有子系统调用和使用。 Linux 的整体式结构决定了要给内核增加新的成分也是非常困难,因此Linux 提供了一种全新的机制—可装入模块

(阅读笔记)网络信息空间的大数据计算 - STEMHA's Blog

https://stemha.github.io/2020/07/22/%EF%BC%88%E7%AC%94%E8%AE%B0%EF%BC%89%E7%BD%91%E7%BB%9C%E4%BF%A1%E6%81%AF%E7%A9%BA%E9%97%B4%E7%9A%84%E5%A4%A7%E6%95%B0%E6%8D%AE%E8%AE%A1%E7%AE%97/

原文介绍网络信息空间的大数据计算 作者:胡春明、马帅、怀进鹏 ,**计算机学会通讯我们需要知道什么? 大数据有什么特征?怎么产生的?这些特征带来了哪些影响?大数据时代的研究方法是不是要变化一下?有了大数据,我们需要用它来做计算,那么大数据计算在不同的层次(数据-算法-系统)又会遇到什么样的挑战?

deque常用操作 - STEMHA's Blog

https://stemha.github.io/2020/06/01/deque%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C/#more

概念Deque(双向队列) 和Queue差不多 ,但是特殊的是Deque可是扩充内存。(实际上连续内存的容器不能随意扩充,所以Deque也不是真正意义上的扩充内存,而是封装了底层的表象。 Deque是由一段段构成的,当走到尾端时自动跳到下一段,(支持迭代器++操作)。 每次扩充,就会申请一个段,从而实现了内存连续的假象。 默认的stack 和 queue 都基于 deque 容器实现, pri

STL 堆常用操作 - STEMHA's Blog

https://stemha.github.io/2020/06/21/STL-%E5%A0%86%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C/#more

基本概念 STL中并没有把heap作为一种容器组件,heap的实现亦需要更低一层的容器组件(诸如list,array,vector)作为其底层机制。 Heap是一个类属算法,包含在< algorithm >中。 STL中关于heap默认调整成的是大顶堆,可以用自定义的compare_fuction函数实现大顶堆或小顶堆。 heap的低层机制vector本身就是一个类模板,heap

成为一个不惑、不忧、不惧的人 - STEMHA's Blog

https://stemha.github.io/2020/03/29/%E6%88%90%E4%B8%BA%E4%B8%80%E4%B8%AA%E4%B8%8D%E6%83%91%E3%80%81%E4%B8%8D%E5%BF%A7%E3%80%81%E4%B8%8D%E6%83%A7%E7%9A%84%E4%BA%BA/#more

说明:本文是梁启超于1922年应苏州学界邀请作的一场演讲。当时,他向在座者提出了一个问题:“为什么进学校?”。而后,他给出的答案是:进学校为的是求学问,求学问为的是学做人。而要成为一个人,总要具备三德:智、仁、勇,实现的状态便是“智者不惑,仁者不忧,勇者不惧”。演讲距今虽然已经过去快一个世纪,但是观点仍然具有很强的穿透力,值得大家好好读一读。

好用的chrome插件 - STEMHA's Blog

https://stemha.github.io/2020/03/29/%E5%A5%BD%E7%94%A8%E7%9A%84chrome%E6%8F%92%E4%BB%B6/

深刻体会到工具的好用,有一些问题使用工具真的省力,关键是学会如何找到这些工具和如何描述自己的相关需求。 Awesome Autocomplete for GitHub增强github的搜索功能 Git History Browser Extension查看github的历史更新记录,超级好用,可以对比不同人对代码做的更新; octotree可以查看github的目录结构,并且下载单个的文件;

linux 性能分析,测试与调优工具 - STEMHA's Blog

https://stemha.github.io/2020/04/09/linux-%E6%80%A7%E8%83%BD%E5%88%86%E6%9E%90%EF%BC%8C%E6%B5%8B%E8%AF%95%E4%B8%8E%E8%B0%83%E4%BC%98%E5%B7%A5%E5%85%B7/

静态性能分析工具(static performance analysis tools) dmesg 用于显示开机信息,开机信息也保存在/var/log目录中,名为dmesg的文件里。 blockdev 工具允许从命令行调用区块设备控制程序。调用设备的ioctl函数。似乎Linux中对设备的直接操作只有ioctl函数。 ldd (List Dynamic Dependencies,意译为列出动态库

关于 - STEMHA's Blog

https://stemha.github.io/about/

关于博主博主是目前是一名在在校的计算机研究生(master student),为未来而学习着,成长着。专业是计算机系统结构。目标是能够怀着求知与探索的品质,能够对社会有所贡献,在信息化浪潮中搏一番自己的精彩。 在此奉上牛顿的名言: 我好像是一个海边玩耍的孩子,不时为拾到比通常更光滑的石子或更美丽的贝壳而欢欣鼓舞,而展现在我面前的是完全未探明的真理之海。 关于博客博主搭建了这个博客主要是为了记录

Linux-虚拟文件系统 - STEMHA's Blog

https://stemha.github.io/2020/07/29/Linux-%E8%99%9A%E6%8B%9F%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F/#more

linux设计** Linux作为一个最著名的自由软件,几乎处处体现了“自由”的**,你可以编译适合自己系统要求的内核,或者轻松添加别人开发的新的模块。只要你有实力,你还可以自己写一个新的Linux 支持的文件系统。Linux 不仅支持多种文件系统,而且还支持这些文件系统相互之间进行访问。Linux成功的关键因素之一是它具有与其他操作系统和谐共存的能力,你能够透明的安装具有其他操作系统文件格式的磁

Linux内核目录文件说明 - STEMHA's Blog

https://stemha.github.io/2020/07/09/LINUX%E5%86%85%E6%A0%B8%E4%BB%A3%E7%A0%81%E7%9B%AE%E5%BD%95%E6%96%87%E4%BB%B6%E8%AF%B4%E6%98%8E/#more

前言Linux内核也是一个抢占式多任务内核。这意味该内核可以暂停一些任务来保证任何应用都有机会来使用CPU。比如: 如果一个应用正在运行但是正在等待一些数据,内核会把这个应用暂停并允许其他的程序使用新释放的CPU资源,直到数据到来。 否则的话,系统就会浪费资源给那些正在等待数据或者其他程序执行的的任务。 内核将会强制程序去等待或者停止使用CPU。没有内核的允许,应用程序不能脱离暂停或者使用CPU。

《苏菲的世界》读书笔记 - STEMHA's Blog

https://stemha.github.io/2020/03/29/%E3%80%8A%E8%8B%8F%E8%8F%B2%E7%9A%84%E4%B8%96%E7%95%8C%E3%80%8B%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/

伊甸园 在某个时刻事物必然从无到有你是谁?世界从何处来? 要么一直存在 要么从无到有 比如空间是由某样东西变成的,那么那样东西必然也是由另外一样东西变成的。一直推下去,那么必然是在某一时刻,事物从无到有。 生死这两件事就像钱币的两面,被我们的思考翻来翻去的时候,当一面变得更清晰的时候,另外一面也随之变得更大而清晰。

list常用操作 - STEMHA's Blog

https://stemha.github.io/2020/05/20/list%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C/#more

基本概念list 底层数据结构为双向链表,支持快速增删 缺点是无法通过位置来直接访问序列中的元素,也就是说,不能索引元素。为了访问 list 内部的一个元素,必须一个一个地遍历元素,通常从第一个元素或最后一个元素开始遍历。 节点对象维护了两个指针,一个指向前一个节点,另一个指向下一个节点。 第一个元素的前向指针总是为 null,因为它前面没有元素,尾部元素的后向指针也总为 null。

B树与B+树详解 - STEMHA's Blog

https://stemha.github.io/2020/06/03/B%E6%A0%91%E4%B8%8EB+%E6%A0%91%E8%AF%A6%E8%A7%A3/#more

基本概念多路搜索树(multi-way search tree): 将传统的二叉搜索树,改造为多路搜索树——在中序的遍历下,这也是一种等价变换 以k层为间隔如此重组,可以将二叉搜索树转化为等价的2^k路搜索树,统称为多路搜索树。 多路搜索树同样支持查找等操作,而且效果与原来的二叉树完全等同;但是重要的是,其对外存的访问方式已经发生本质变化,是以大节点为单位从外存读取一组(而不是单个)关键码。

《练习的心态》读书笔记 - STEMHA's Blog

https://stemha.github.io/2020/04/08/%E3%80%8A%E7%BB%83%E4%B9%A0%E7%9A%84%E5%BF%83%E6%80%81%E3%80%8B%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/#more

引言 人生就是漫长的练习第1章 学习开始当你弄懂了练习的正确原理,学习某些新事物的任务将变成一种没有压力的愉快与平和的体验,变成一个适合你生活中各种领域的过程,并且促成你对生活中所有的艰辛与痛苦采用合适的视角来观察。

string常用操作 - STEMHA's Blog

https://stemha.github.io/2020/06/06/string%E5%B8%B8%E7%94%A8%E6%93%8D%E4%BD%9C/#more

基本概念标准库 string 类型:string 类型支持长度可变的字符串,C++ 标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作。可以使用输入输出流方式直接进行操作,也可以通过文件等手段进行操作。size_type是一个依赖于实现的整型,是在string中定义的。string类将string::npos定义为字符串的最大长度,通常为unsigned int的最大值。另外,使用缩写N

计算机网络教程-TCP状态转换 - STEMHA's Blog

https://stemha.github.io/2020/06/10/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C%E6%95%99%E7%A8%8B-TCP%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2/#more

TCP状态表 状态 说明 状态 说明 CLOSED 没有连接存在 FIN-WAIT-2 首个FIN 的ACK 已被接收;等待第二个FIN LISTEN 接收到被动打开;等待SYN CLOSE-WAIT 首个FIN 被接收,ACK 被发送;等待应用关闭 SYN-SENT SYN已被发送;等待ACK TIME-WAIT 第二个FIN 被接收,ACK 被发送;等待2MSL 超时 S

Linux-块设备驱动程序 - STEMHA's Blog

https://stemha.github.io/2020/08/17/Linux-%E5%9D%97%E8%AE%BE%E5%A4%87%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F/#more

概述 Linux块设备处理程序的组织是相当复杂的,在此不可能详细介绍内核块设备I/O子系统中包含的所有函数我们主要说明下面几个问题: Linux块设备I/O子系统的体系结构是什么? 块设备I/O子系统的主要组件有哪些?有哪些作用? 打开一个块设备文件时内核执行的步骤有哪些? 内核如何对块设备和块设备的请求进行管理?->这部分在内核中称为块I/O层

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.