原创 【leetcode】Min Stack

Problem Code typedef struct { int *value; //Array to put elements int minIndex; //The minimum's inde

原创 ngx_listening_s

ngx_listening_s   這個結構體在Nginx中用來監聽一個端口。位於“Nginx包/src/core/ngx_connection.h”下。 typedef struct ngx_listening_s ngx_li

原创 【latched】Single Number II

Problem Code int singleNumber(int* nums, int numsSize) { int tmp = 0; for(int i=1;i<numsSize;++i){

原创 操作系統重要數據結構

段選擇符 請求特級權RPL(Requestd Privilege Level) 提供段保護信息,在特級權之間的切換 指示標誌TI(Table Index) 0:在GDT中查找;1:在LD

原创 ngx_hash散列表

ngx_hash_t散列表(全匹配) 散列表槽的結構 typedef struct { /* 指向用戶定義元素數據的指針,如果當前ngx_hash_elt_t槽爲空,則value=NULL */ void

原创 Nginx master工作流程

master工作流程圖       master進程不需要處理網絡事件,它不負責業務的執行,只會通過管理worker等子進程來實現重啓服務、平滑升級、更換日誌文件、配置文件實時生效等功能。       它會通過檢查一下

原创 2016 360校招筆試編程題

360校招編程題 第一題 題目       有一個小鎮選舉鎮長,滿足條件如下: 1. 每個人都認識自己; 2. 鎮長必須不認識除了自己以外的任何人; 3. 每個人都必須認識鎮長。       輸入: 第一行爲數據個

原创 猴子背香蕉

猴子背香蕉問題 問題描述   有一個猴子,身邊有100根香蕉,一次最多背50根,離家50步。它揹着香蕉每走一步都會吃掉一根,請問到家時,它最多剩下幾根? 個人思路   我覺得要抓住一點,就是如何達到最優:走同樣多的路程,每次

原创 《深入理解Nginx 模塊開發與架構解析》筆記之epoll事件模塊

epoll Linux epoll Linux epoll工作模式 水平觸發LT 邊緣觸發ET       前者是默認的,可以處理阻塞和非阻塞套接字,後者只能處理非阻塞套接字。 Linux epoll原理      

原创 《深入理解Nginx》之HTTP模塊

Nginx HTTP模塊 ngx_http_module       對於每一個HTTP模塊,都必須實現ngx_http_module接口。 typedef struct { /* 在解析http{}配置項前的回調函數

原创 Nginx監聽端口管理

Nginx監聽端口管理       每監聽一個TCP端口,都將使用一個獨立的ngx_http_conf_port_t結構體表示。 ngx_http_conf_port_t typedef struct { //socket

原创 Nginx worker工作流程

worker工作流程圖 worker接收的信號   worker進程的工作方法:ngx_worker_process_cycle,它會關注4個全局標誌位。 1. sig_atomic_t ngx_terminate; 2

原创 【leetcode】Candy

Problem Code /* #include <stdio.h> #include <stdlib.h> #include <stdbool.h> * 1、找出“兩邊高,中間低”的那個點,設爲1(可能有很多這樣的

原创 《深入理解Nginx 模塊開發與架構解析》筆記之定時器

Nginx 定時器 Nginx 對時間的管理       Nginx爲了提高速度,自己實現了對時間的管理,設計了數據結構和一些變量,存儲在內存中。每一個進程都會單獨地管理當前的時間。 ngx_time_t typedef st

原创 Nginx事件模塊

ngx_event_module_t       這是事件模塊都必須實現的接口。 typedef struct { //事件模塊的名稱 ngx_str_t *name; //在解析配置項前,