自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 Linux 下的c++学习(六)-线程

1 线程简介 1.1 进程与线程区别 进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。线程是一条执行路径,是程序执行时的最小单位,它是进程的一个执行流,是CPU调度和分派的基本单位,一个进程可以由很多个线程组成,线程间共享进程的所有资源,每个线程有自己的堆栈和局部变量。线程由CPU独立调度执行,在多CPU环境下就允许多个线程同时运行。同样多线程也可以实现并发操作,对于单核CPU而言:多线程就是一个CPU在来回的切换,在交替执行。对于多核CPU而言,多线程就是同时有多条执行路径在

2021-12-27 16:58:14 635

原创 Linux 下的c++学习(五)-进程通信(2)

1 进程通信 进程间通信(IPC)是一组编程接口,让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息。这使得一个程序能够在同一时间里处理许多用户的要求。 用户角度: 进程是程序的一次动态执行过程 操作系统: 进程是操作系统分配资源的基本单位,也是最小单位。每一个进程占有自己独立的资源,且不能进程间直接访问各自资源。但实际情况下,进程间是需要通信的。 1.1 目的 进程间数据传输:不同qq用户间通信 通知事件:子进程结束时需...

2021-12-20 17:46:00 765

原创 Linux 下的c++学习(五)-进程(1)

1 进程概述 进程:正在进行的一个过程或者说一个任务。而负责执行任务则是cpu。 1.1 进程与程序 程序 = 数据 +算法 = 一堆代码:存放磁盘 进程 = 运行的程序:需要占据内存,消耗内存资源。 一个程序可以创建多个进程。 1.2 并发与并行 无论是并行还是并发,在用户看来都是’同时’运行的。从CPU角度来说,一个时间点只能运行一个任务。 并发:是伪并行,即看起来是同时运行。单个cpu+多道技术就可以实现并发。 并行:同时运行,只有具备多个cpu才能实现并行(多核系统) 1.3 进

2021-12-02 17:11:57 1752

原创 Linux 下的c++学习(四)

1. Linux 系统级理解 1. 1 何为操作系统(OS)? OS是统一管理电脑硬件与软件资源的程序,或者说是计算机软件与硬件联通的桥梁。同时也是计算机系统的内核。主要包括五大功能:进程管理,内存管理,设备管理,文件管理,作业管理。 Linux 系统主要被应用于服务器端、嵌入式开发和 PC 桌面 3 大领域。本文涉及到OS的内存管理与文件管理,主要介绍这两部分内容。 1.2 内存管理 内存是计算机很重要的一个资源,因为程序只有被加载到内存中才可以运行;此...

2021-11-30 13:58:54 603

原创 Linux 下的c++学习(三)

1.makefile 简介 makefile 是一个类似shell脚本的自动化编译工具。Makefile 文件描述了整个工程的编译、连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。 makefile 存在意义在于提高代码部署、调试、运行效率。试想一下,源文件(src)下存在成千上百 .cpp文件,每次调试都需要按照(一)中方式:g++ -c ......,对于开发人员来说,将及其不便。makefile 配置好更新.

2021-11-26 16:18:29 1095

原创 Linux 下的c++学习(二)

1 c++静态库与动态库 1.1 动机 库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层 库。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。 linux: .a .so-----库命名:libxxx.a/libxxx.so (xxx-库名) window: .lib .dll 库制作:目的是为了提高代码复用率。同时可做代码保密。 ...

2021-11-26 11:40:43 970

原创 Linux 下的c++学习(一)

1c++开发环境搭建 操作系统(OS):Linux ,这里使用ubuntu20.04。推荐购买云服务器,然后xshell远程链接学习。推荐配置免密登陆。 Tools: Vscode 插件:https://zhuanlan.zhihu.com/p/113222681 2 简单回顾 2.1 编程语言的演化 初期:二进制编程,面向机器的01操作。 缺点:不具可读性,编写难。 发展:汇编语言,面向硬件,即指令直接操作硬件的机器语言。 操作:助记符代替机器指令...

2021-11-26 11:02:10 966

原创 深度学习教程(2)

lession_2:梯度下降算法(GD) 注意,至此,我们都是讲解线性结构 针对上期的与门结构模型,我们引入一个最简单的误差衡量函数: 其中,y'表示计算值,y为真值,m表示样本量(即输入-训练数据个数)。显然误差函数J(w)【cost function】为一个凸二次型函数,即意味着J(w)存在最小值。而此...

2019-11-18 12:24:37 93

原创 深度学习教程(1)

lession_1:感知机模型(perceptron model) (1)感知机是二分类的线性模型(linear model),其输入是实例的特征向量,输出的是实例的类别,分别是+1和-1,属于判别模型,是神经网络(NN)和支持向量机(SVM)的基础。 (2)感知机是神经网络(深度学习)的起源算法,也称为“人工神经元”或“朴素感知机”。结构为类神经元结构: ...

2019-11-11 11:31:21 73

原创 ubuntu16.04+anaconda3+cuda9.0+cdunn7.1+tensorflowgpu1.9.0+pycharm3.2

1 安装ubuntu16.04系统,可以百度搜索,这里不累述。 2 下载安装anaconda3.5.2.0:        2.1 下载anaconda3镜像,清华大学开源软件镜像站下载地址: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/  查找对应需要版本,这里使用Anaconda3-5.2.0-Linux-x86_64.sh ...

2019-01-10 17:33:54 1997

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除