上一页 1 2 3 4 5 6 ··· 16 下一页
摘要: 先安装 sudo apt-get install gnome-shell-extension-autohidetopbar 然后安装 sudo apt-get install gnome-shell-extension-dashtodock 最后在扩展中找到hide top bar开启就好了 阅读全文
posted @ 2019-11-30 15:40 习惯就好233 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 1 /* testmini.c -- very simple test program for the miniLZO library 2 3 This file is part of the LZO real-time data compression library. 4 5 Copyright 阅读全文
posted @ 2019-11-27 14:48 习惯就好233 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 页高速缓存是Linux内核实现磁盘缓存。磁盘告诉缓存重要源自:第一,访问磁盘的速度要远远低于访问内存。 第二,数据一旦被访问,就很有可能在短期内再次被访问到。这种短时期内集中访问同一片数据的原理称作临时局部原理。 一、缓存手段 1.1 写缓存 通常来讲缓存一般实现成三种策略: ①不缓存 ②写操作将自 阅读全文
posted @ 2019-11-20 21:24 习惯就好233 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 解决方法: 1.打开该项目的“属性页”对话框。 2.单击“链接器”文件夹。 3.单击“命令行”属性页。 4.将 /SAFESEH:NO 键入“附加选项”框中,然后点击应用。 阅读全文
posted @ 2019-11-15 16:47 习惯就好233 阅读(1609) 评论(0) 推荐(0) 编辑
摘要: 一、地址空间 进程地址空间由进程可寻址的虚拟内存组成,内核允许进程使用这种虚拟内存中的地址。 每个进程都有一个32位或64位的平坦地址空间,空间的具体大小取决于体系结构。“平坦”指的是地址空间范围是一个独立的连续区间。 现代采用虚拟内存的操作系统通常都使用平坦地址空间而不是分段式的内存模式。 一个进 阅读全文
posted @ 2019-10-24 13:57 习惯就好233 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 一、剖析一个块设备 块设备最小的可寻址单元是扇区。 扇区大小一般是2的整数倍,最常见的是512字节。 因为各种软件的用途不同,所以他们都会用到自己的最小逻辑可寻址单元 块。块只能基于文件系统,是一种抽象。 而扇区是设备的最小可寻址单元,所以块不能比扇区还小,只能数倍于扇区大小。此外内核要求块是2的整 阅读全文
posted @ 2019-10-23 12:44 习惯就好233 阅读(268) 评论(0) 推荐(0) 编辑
摘要: Qt中设置按钮或QWidget的外观是,可以使用QT Style Sheets来进行设置,非常方便。可以用setStyleSheet("font: bold; font-size:20px; color: rgb(241, 70, 62); background-color: green");来进行 阅读全文
posted @ 2019-08-29 14:29 习惯就好233 阅读(2739) 评论(0) 推荐(0) 编辑
摘要: 一、通用文件系统接口 Linux通过虚拟文件系统,使得用户可以直接使用open()、read()、write()访问文件系统,这种协作性和泛型存取成为可能。 不管文件系统是什么,也不管文件系统位于何种介质,采用策略是统一的。 二、文件系统抽象层 为了支持多文件系统,VFS提供了一个通用文件系统模型, 阅读全文
posted @ 2019-08-23 21:56 习惯就好233 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 内核里的内存分配不像其他地方分配内存那么容易,内核的内存分配不能简单便捷的使用,分配机制也不能太复杂。 一、页 内核把页作为内存管理的基本单位,尽管处理器最小寻址坑是是字或者字节。但是内存管理单元MMU通常以页为单位进行处理。 从虚拟内存的角度来看,页就是最小单位。大多数32位系统支持4KB的页,而 阅读全文
posted @ 2019-07-06 14:00 习惯就好233 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 时间管理在内核中占用非常重要的地位,内核中有大量的函数都需要基于时间驱动的,内核对相对时间和绝对时间都非常需要。 一、内核中的时间概念 内核必须在硬件的帮助下才能计算和管理时间,系统定时器以某种频率自行触发(击中hitting或者射中popping)时钟中断,该频率可以通过编程预定,称作节拍率。 因 阅读全文
posted @ 2019-06-25 23:00 习惯就好233 阅读(768) 评论(0) 推荐(0) 编辑
摘要: 一、原子操作 原子操作可以保证指令以原子的方式执行 执行过程不被打断。 1.1 原子整数操作 针对整数的原子操作只能对atomic_t类型的数据进行处理。 首先,让原子函数只接收atomic_t类型的操作数,可以确保原子操作只与这种特殊类型数据一起使用,并且不会被其他人使用。 使用atomic_t类 阅读全文
posted @ 2019-06-15 21:53 习惯就好233 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 在使用共享内存的应用程序中,程序员必须特别留意保护共享资源,防止共享资源并发访问。 一、临界区和竞争条件 1.1 临界区和竞争条件 所谓临界区就是访问和操作共享数据代码段。多个执行线程并发访问同一个资源通常是不安全的,为了避免在临界区中并发访问,编程者必须保证这些代码原子地执行。 如果两个执行线程有 阅读全文
posted @ 2019-06-12 23:02 习惯就好233 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 一、编写一个hello world驱动 懒,不写了 二、编写Kconfig和Makefile 我们在kernel/driver目录下创建一个hello目录 然后创建一个Kconfig文件: config HELLO tristate "Hello world for Firefly" help He 阅读全文
posted @ 2019-06-01 14:05 习惯就好233 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 一、安装cscope 安装方式比较多样,可以在各自linux软件管理工具中安装,也可以去官网下载安装。 sudo apt-get install cscope 二、插件安装 这里选择的是Vundle来管理vim插件,所以只需要在.vimrc中添加Plugin 'brookhong/cscope.vi 阅读全文
posted @ 2019-05-04 19:34 习惯就好233 阅读(2060) 评论(0) 推荐(0) 编辑
摘要: 一、用到的rk3328好像使用了设备树 设备树我知道的有三种文件类型,dtbs是通过指令make dtbs编译的二进制文件,供内核使用。 基于同样的软件分层设计的思想,由于一个SoC可能对应多个machine,如果每个machine的设备树都写成一个完全独立的.dts文件。 那么势必相当一些.dts 阅读全文
posted @ 2019-04-26 16:29 习惯就好233 阅读(809) 评论(0) 推荐(0) 编辑
摘要: 一、编译 Linux 固件 这一章将介绍编译 ROC-RK3328-CC Linux 固件的整个流程。 1.1 准备工作 Linux 固件在如下的环境中编译: Ubuntu 16.04 amd64 安装以下包: sudo apt-get install bc bison build-essentia 阅读全文
posted @ 2019-04-23 12:46 习惯就好233 阅读(4181) 评论(0) 推荐(0) 编辑
摘要: 一、准备工作 安装Git(因为下面我们选择的插件管理器需要使用到它)安装其他插件前首先需要选择一个Vim插件管理器,我这里选择的是Vundle,Vundle的工作过程中需要通过Git自动从远程创库同步插件安装包到本地仓库(Vundle的默认本地仓库位置是~/.vim/bundle/) 通过Git下载 阅读全文
posted @ 2019-04-23 10:36 习惯就好233 阅读(7813) 评论(0) 推荐(0) 编辑
摘要: 上半部分的中断处理有一些局限,包括: 中断处理程序以异步方式执行,并且它有可能打断其他重要代码的执行。 中断会屏蔽其他程序,所以中断处理程序执行的越快越好。 由于中断处理程序往往需要对硬件进行操作,所以它们通常又很高的时限要求。 中断处理程序不在进程上下文中运行,所以它们不能阻塞。这限制它们所做的事 阅读全文
posted @ 2019-03-14 14:45 习惯就好233 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 一、租赁程序 一个简单的影片租赁程序,计算每一个位顾客的消费金额并打印详单。 顾客租了哪些影片、租期多长,程序便更具租赁时间和影片类型算出费用。 影片分为三类:普通片、儿童片和新片。 除了计算费用,还要为常客计算积分,积分会根据租片种类是否为新片而不同 程序内容: movie类: /* movie. 阅读全文
posted @ 2019-03-04 23:13 习惯就好233 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 一、把github上的代码下载下来 git clone ...... 下载代码,并更新子模块 git clone .... //更新.git/config文件 git submodule init git submodule update 或者 git clone git@github.com:Sp 阅读全文
posted @ 2019-03-04 14:34 习惯就好233 阅读(378) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 16 下一页