[發(fā)明專利]Linux內(nèi)核支持夏令時的方法在審
| 申請?zhí)枺?/td> | 201310698007.0 | 申請日: | 2013-12-18 |
| 公開(公告)號: | CN103744650A | 公開(公告)日: | 2014-04-23 |
| 發(fā)明(設(shè)計)人: | 陳真 | 申請(專利權(quán))人: | 深圳市共進電子股份有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 深圳市凱達知識產(chǎn)權(quán)事務(wù)所 44256 | 代理人: | 王琦 |
| 地址: | 518067 廣東省深圳市南山區(qū)南海*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | linux 內(nèi)核 支持 夏令時 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及Linux領(lǐng)域,尤其涉及一種Linux內(nèi)核支持夏令時的方法。
背景技術(shù)
操作系統(tǒng)是一個用來和硬件打交道并為用戶程序提供一個有限服務(wù)集的低級支撐軟件。一個計算機系統(tǒng)是一個硬件和軟件的共生體,它們互相依賴,不可分割。計算機的硬件,含有外圍設(shè)備、處理器、內(nèi)存、硬盤和其他的電子設(shè)備組成計算機的發(fā)動機。但是沒有軟件來操作和控制它,自身是不能工作的。完成這個控制工作的軟件就稱為操作系統(tǒng),在Linux的術(shù)語中被稱為“內(nèi)核”,也可以稱為“核心”。Linux內(nèi)核的主要模塊(或組件)分以下幾個部分:存儲管理、CPU和進程管理、文件系統(tǒng)、設(shè)備管理和驅(qū)動、網(wǎng)絡(luò)通信,以及系統(tǒng)的初始化(引導(dǎo))、系統(tǒng)調(diào)用等。
Linux是一個一體化內(nèi)核(monolithic?kernel)系統(tǒng)。設(shè)備驅(qū)動程序可以完全訪問硬件。Linux內(nèi)的設(shè)備驅(qū)動程序可以方便地以模塊化(modularize)的形式設(shè)置,并在系統(tǒng)運行期間可直接裝載或卸載。
夏令時(Daylight?Saving?Time:DST),又稱“日光節(jié)約時制”和“夏令時間”,是一種為節(jié)約能源而人為規(guī)定地方時間的制度,在這一制度實行期間所采用的統(tǒng)一時間稱為“夏令時間”。一般在天亮早的夏季人為將時間提前一小時,可以使人早起早睡,減少照明量,以充分利用光照資源,從而節(jié)約照明用電。
現(xiàn)有的,Linux應(yīng)用層在下發(fā)規(guī)則的時候,會涉及到時間等參數(shù),如:
當設(shè)置一條防火墻規(guī)則,周一至周五的8:30-18:00不允許訪問網(wǎng)站www.luntan.com,則在Linux應(yīng)用層,需下發(fā)規(guī)則如下:
iptables-t?filter-I?URL_BlackFilter-m?string--algo?bm--stringwww.luntan.com-m?time--timestart8:30--timestop18:00--weekdays?Sun,Mon,Tue,Wed,Thu,-j?DROP
但是在開啟夏令時的時候,下發(fā)規(guī)則生效的時間是9:30-19:00,而Linux內(nèi)核不支持夏令時,這樣用戶設(shè)置的時間和規(guī)則生效的時間就沖突了。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種Linux內(nèi)核支持夏令時的方法,以保證用戶設(shè)置的時間和規(guī)則生效的時間一致。
本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的。
一種Linux內(nèi)核支持夏令時的方法,包括以下步驟:
a:在linux內(nèi)核中新建一DST模塊,并初始化DST模塊,創(chuàng)建/proc/net/tbs_dst接口;
b:應(yīng)用層設(shè)置夏令時;
c:內(nèi)核讀取proc接口,并修改DST模塊中的內(nèi)容;
d:內(nèi)核中iptables模塊下發(fā)規(guī)則,并調(diào)用DST模塊判斷時間在夏令時范圍內(nèi),將iptables模塊下發(fā)規(guī)則中時間自動增加1小時。
進一步優(yōu)選地,步驟a中所述初始化DST模塊包括:在DST模塊內(nèi)初始化一全局變量struct?tbs_dst_info*dst用于維護夏令時。
進一步優(yōu)選地,步驟a中所述初始化DST模塊還包括:DST模塊初始化proc接口變量/proc/net/tbs_dst。
進一步優(yōu)選地,步驟b具體包括:應(yīng)用層調(diào)用echo“起始時間終止時間”>/proc/net/tbs_dst用于設(shè)置內(nèi)核夏令時。
進一步優(yōu)選地,步驟b還包括:應(yīng)用層調(diào)用cat/proc/net/tbs_dst讀取內(nèi)核夏令時時間。
進一步優(yōu)選地,步驟c具體包括:內(nèi)核調(diào)用proc接口tbs_dst_read讀取應(yīng)用層設(shè)置,并修改DST模塊中的內(nèi)容.
進一步優(yōu)選地,步驟c還包括:內(nèi)核調(diào)用proc接口tbs_dst_write來輸出DST模塊中的內(nèi)容。
進一步優(yōu)選地,步驟d還包括DST模塊判斷時間不在夏令時范圍內(nèi),則保持當前時間不變。
本發(fā)明與現(xiàn)有技術(shù)相比,有益效果在于:本發(fā)明提供的Linux內(nèi)核支持夏令時的方法,在linux內(nèi)核中新建一DST模塊,當內(nèi)核模塊iptables規(guī)則生效時,通過調(diào)用DST模塊來判斷時間是否在夏令時范圍之內(nèi),從而保證用戶設(shè)置的時間和規(guī)則生效的時間一致。
附圖說明
圖1為本發(fā)明Linux內(nèi)核支持夏令時的方法流程圖。
具體實施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市共進電子股份有限公司,未經(jīng)深圳市共進電子股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310698007.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





