操作系统
EnjoyCodingAndGame
Nothing raplaces hard work.
纸上得来终觉浅,绝知此事要躬行。
展开
-
docker容器启动失败如何定位(查看容器日志)
在使用docker的时候,在某些未知的情况下可能启动了容器,但是过了没几秒容器自动退出了。这个时候如何排查问题呢?通常碰到这种情况无非就是环境有问题或者应用有问题,应用问题再本地可以进行调试解决,但是环境问题就比较头疼了。这个时候我们就需要查看容器的日志来进行排查。我们可以通过如下命令来获取容器的日志地址docker inspect --format '{{.LogPath}}' 97069f94437b然后通过cat命令查看上述命令找到的日志地址cat /var/lib/docke原创 2021-11-09 18:03:22 · 2690 阅读 · 1 评论 -
程序内存空间(代码段、数据段、堆栈段)
在冯诺依曼的体系结构中必须有:代码段,堆栈段,数据段。进程的虚拟地址空间图示如下:堆栈段: 1. 为函数内部的局部变量提供存储空间。 2. 进行函数调用时,存储“过程活动记录”。 3. 用作暂时存储区。如计算一个很长的算术表达式时,可以将部分计算结果压入堆栈。数据段(静态存储区): 包括BSS段的数据段。BSS段存储未初始化的原创 2016-08-24 20:55:12 · 53672 阅读 · 11 评论 -
Linux IO模式及 select、poll、epoll详解
同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。本文讨论的背景是Linux环境下的network IO。一 概念说明在进行解释之前,首先要说明几个概念:- 用户空间和内核空间- 进程切换- 进程的阻塞- 文件描述符- 缓存 I/O用户空间与内核空间现转载 2016-09-14 18:57:51 · 523 阅读 · 0 评论 -
Unix / Linux 线程的实质
线 程线程与进程的比较概述:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部转载 2016-09-16 13:41:11 · 487 阅读 · 0 评论 -
Linux系统调用和库函数调用的区别
Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。可以参考《Linux程序设计》(英文原版为《Beginning Linux Programming》,作者是Neil Matthew和Richard Stones)第三章: Working with files。系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底转载 2016-09-16 15:13:01 · 443 阅读 · 0 评论 -
Linux进程与线程的区别
进程与线程的区别,早已经成为了经典问题。自线程概念诞生起,关于这个问题的讨论就没有停止过。无论是初级程序员,还是资深专家,都应该考虑过这个问题,只是层次角度不同罢了。一般程序员而言,搞清楚二者的概念,在工作实际中去运用成为了焦点。而资深工程师则在考虑系统层面如何实现两种技术及其各自的性能和实现代价。以至于到今天,Linux内核还在持续更新完善(关于进程和线程的实现模块也是内核完善的任务之一)。转载 2016-09-16 14:41:48 · 591 阅读 · 0 评论 -
ARM Cortex-A 系列处理器天梯图
ARM Cortex-A Series ProcessorsARM Cortex A53 Versus CortexA15The Cortex A53 uses the ARMv8-A architecture to support 32-bit ARMv7 code and 64-bit AArch64 execution state. The Cortex-A53 processor arch...原创 2018-05-16 18:24:57 · 50109 阅读 · 0 评论