原创 linux 信號集測試範列

linux信號集測試工程: #include <unistd.h> #include <iostream> #include <signal.h> #include <sys/types.h> #include <sys/sysc

原创 IO文件描述符在創建子進程後的幾點猜測!

在我們寫linux服務器的時候,fork()子進程那是相當容易會碰到的,但是最近碰到了一個問題: 場景描述: 在主進程中處理通信協議,如果用戶要加入一個不存在的房間,那麼我們就會fork()一個子進程,然後所以的協議,我們都放到子

原创 sudo apt-get install安裝的程序如何刪除

記錄一個小筆記. 當我們使用sudo apt-get install mysql-sever,安裝某個應用程序後,如何刪除呢? 1.sudo apt-get remove mysql-server 2.sudo apt-get a

原创 linux網絡編程之IO複用-epoll用法

上一篇文章中,我們講解了select的用法和弊端. https://blog.csdn.net/zhangkai19890929/article/details/95165596 select的最大弊端就是: 就是每次都要遍歷整個

原创 linux 信號量編程測試

在理解信號量之前,有2個基本概念需要整理: 一個是內核態,一個是用戶態. 用戶態好理解就是我們自己的代碼,內核態就是內核去幫我們做的事情,比如我調用了一個函數 : memcpy();在調用的時候,就由用戶態切換到了內核態,當mem

原创 Linux下的程序調試經驗總結

首先千萬不要牴觸,這個東西就是看起來麻煩,但是經常用的命令其實也就那麼幾個,今天我們以我工作中碰到的實際例子爲列,進行簡單的操作說明. 在某個固定的文件中添加斷點 定位到某個斷點,逐行往下移動 進入到某個函數,然後再函數內移動推

原创 ubuntu 18.04 下安裝和使用MySQL數據庫

api 文檔: https://dev.mysql.com/doc/refman/8.0/en/c-api.html 安裝mysql 直接使用官方提供的二進制安裝包進行安裝 https://dev.mysql.com/doc/re

原创 ffmpeg命令行使用筆記

從mp4文件中提取出264文件並且存儲起來: 注意是直接提取,不是提取後解碼,再重新編碼. ffmpeg -i baseline.mp4 -codec copy -bsf: h264_mp4toannexb -f h264 av.

原创 工具網址收藏

linux函數API查詢 http://www.man7.org/linux/man-pages/index.html

原创 linux 下創建守護進程以及守護進程和後臺進程的區別

什麼是守護進程? 守護進程和後臺進程的區別? 如何創建守護進程? 一:創建守護進程範例. /** * 功能:創建一個守護進程 * * 守護進程編寫規則: * (1)調用umask(0) --取消umask的功能 *

原创 FFmpeg實現h264 轉mpeg1video 存儲

需要實現的功能: 把h264文件進行解碼,解碼後然後進行mpeg1的編碼. 這一步完成接下來再實現存儲爲ts,本篇代碼實現了第一部分, 注意事項: ffmpeg版本問題,今天2020.2.11的最新版本是ffmpeg 4.2.

原创 ubuntu 18.04 下配置固定IP

參考文章,碰到問題請參考 : https://blog.csdn.net/Ljuice/article/details/87455839 我的配置文件 : 配置好後,執行 : netplan apply 成功後終端沒有任何輸出,

原创 linux下處理信號範例

最先處理信號是用signal函數簡單處理的,但是我們需要做的是商業代碼,下面的2個範例,基本涵蓋了商業代碼中信號的使用. 信號中信號集的概念. 目前的信號集一共有32個 0000000000 0000000000 000000

原创 linux ubuntu 阿里雲源: Address family not supported by protocol問題

首先說明,這個問題條件很固定: 1.ubuntu18.04 2.使用的阿里雲的源碼 問題出現的原因: 1.recvfrom() int readSocket(int socket,unsigned char *buffer,un

原创 linux 下編譯exosip 庫

1.安裝mxml 源碼下載地址: https://github.com/michaelrsweet/mxml.git 編譯: prefix後面只能跟絕對路徑: ./configure --prefix=/mnt/d/work/co