欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于確定軟件許可之間的兼容性的系統(tǒng)及方法

文檔序號(hào):9252419閱讀:529來(lái)源:國(guó)知局
用于確定軟件許可之間的兼容性的系統(tǒng)及方法
【專利說(shuō)明】
【背景技術(shù)】
[0001]在編寫源代碼時(shí),開(kāi)發(fā)者可使用已寫的代碼段,而不用自己創(chuàng)建這種功能。在許多情況下,包含在開(kāi)發(fā)者的應(yīng)用程序中的代碼段服從開(kāi)源軟件(OSS)許可。存在許多不同類型的OSS許可,且各許可的條款根據(jù)許可的不同而不同。服從OSS許可的軟件的越來(lái)越多的使用提出了一種邏輯問(wèn)題:跟蹤各種OSS許可強(qiáng)加的限制和責(zé)任。
[0002]OSS許可具有許多條款。通過(guò)示例,一個(gè)OSS許可條款可要求:如果該許可覆蓋的軟件被開(kāi)發(fā)者修改,必須公開(kāi)整個(gè)應(yīng)用程序(不僅是服從OSS許可的代碼段,而是整個(gè)應(yīng)用程序)。在某些情況下,一些條款可要求源代碼的公開(kāi),而其它條款可要求對(duì)所有人公布可執(zhí)行代碼,以在服從一定的許可條款下使用。另一個(gè)OSS許可條款可要求:在某些情況下,可給服從許可的代碼段的作者信用。各種許可在增多,且可用條款很多。跟蹤可用的責(zé)任以及限制是成問(wèn)題的。
【附圖說(shuō)明】
[0003]為了詳細(xì)描述本公開(kāi)的示例,現(xiàn)在將參照附圖,其中:
[0004]圖1不出根據(jù)各種不例的系統(tǒng);
[0005]圖2描繪根據(jù)各種示例的對(duì)應(yīng)用程序的使用定義的輸入;
[0006]圖3示出根據(jù)各種示例的方法;以及
[0007]圖4示出根據(jù)各種示例的另一方法。
[0008]整個(gè)下面的說(shuō)明書和權(quán)利要求中所使用的某些術(shù)語(yǔ)指特定的系統(tǒng)組件。本領(lǐng)域的技術(shù)人員將理解,計(jì)算機(jī)公司可用不同的名字來(lái)指一種組件。本文檔目的不在于區(qū)分名字不同的組件,而在于區(qū)分功能不同的組件。在下面的討論中以及在權(quán)利要求中,以開(kāi)放式的方式使用術(shù)語(yǔ)“包括”和“包含”,且因此,應(yīng)解釋為表示“包括,但不限于…”。此外,術(shù)語(yǔ)“聯(lián)接”和“耦合”意在表示間接、直接、光學(xué)的或無(wú)線電氣連接。因此,如果第一設(shè)備聯(lián)接至第二設(shè)備,該聯(lián)接可以是通過(guò)直接的電氣連接的、通過(guò)經(jīng)由其他設(shè)備和連接件的間接的電氣連接的、通過(guò)光電連接的、或通過(guò)無(wú)線電氣連接的。
【具體實(shí)施方式】
[0009]下面的討論針對(duì)本公開(kāi)的各種示例。盡管這些示例中的一個(gè)或多個(gè)可能是優(yōu)選的,但所公開(kāi)的示例不應(yīng)理解為或用作限制本公開(kāi)的包括權(quán)利要求的范圍。此外,本領(lǐng)域的技術(shù)人員應(yīng)理解,下面的描述具有廣泛的應(yīng)用,且任何示例的討論僅意味著該示例是示范性的,且目的不在于暗示本公開(kāi)的包括權(quán)利要求的范圍受限于該示例。
[0010]根據(jù)本公開(kāi)的各種示例,確定更大范圍的項(xiàng)目中使用的兩個(gè)或多個(gè)軟件組件的開(kāi)源軟件(OSS)許可之間的兼容性。為了將兩個(gè)或多個(gè)組件組合到更大范圍的項(xiàng)目中,組件必須適用于其在該項(xiàng)目中的預(yù)期用途。如果OSS許可允許該預(yù)期用途,則它們可兼容;如果沒(méi)有辦法同時(shí)滿足兩個(gè)許可,則它們不兼容。隨著項(xiàng)目中服從OSS許可的組件的數(shù)量的增加,兼容性的確定變得越來(lái)越復(fù)雜。
[0011]項(xiàng)目定義指定將在項(xiàng)目中使用的OSS組件,且對(duì)于每個(gè)組件,指定組件的預(yù)期用途或動(dòng)作(例如,將不修改的使用,將修改,或?qū)㈡溄又亮硪粋€(gè)組件)。在組件將鏈接至第二組件的情況下,還指定第二組件。項(xiàng)目定義還指定項(xiàng)目的預(yù)期用途,IP定位描述是否將公開(kāi)源代碼,且交付的類型規(guī)定項(xiàng)目是否將在內(nèi)部使用或分發(fā)到客戶端或重新許可。
[0012]隨后分析每個(gè)組件許可與其它組件許可的兼容性。不兼容的一個(gè)示例是一個(gè)組件由GNU通用公共許可(GPL)管理,另一個(gè)組件由Mozilla公共許可(MPL)管理。每個(gè)許可允許關(guān)聯(lián)的組件的修改,但具有重新分配時(shí)在組件許可的多個(gè)條款下許可項(xiàng)目的要求。如果兩個(gè)組件的動(dòng)作指定修改,且該項(xiàng)目將為分布式的,則由于不能夠同時(shí)在兩個(gè)不同的許可下重新許可項(xiàng)目,存在不兼容。
[0013]如果發(fā)生不兼容,為用戶顯示關(guān)于如何避免不兼容的建議。在上述場(chǎng)景中,例如,建議可以是查找兩個(gè)沖突組件中的一個(gè)的替代(例如,通過(guò)在內(nèi)部設(shè)計(jì)類似的組件,或通過(guò)定位不要求使用沖突許可重新許可產(chǎn)品的替代組件)。建議的另一個(gè)示例可以是“你應(yīng)重建與客戶的關(guān)系,使得客戶提供軟件而不是你。作為替代,你應(yīng)該為客戶提供服務(wù)(而不是產(chǎn)品),以修改其軟件”。因此,避免對(duì)許可產(chǎn)生不兼容的任何OSS組件的需要。
[0014]圖1圖示包括聯(lián)接至輸入設(shè)備104的硬件處理器102(例如,中央處理單元“CPU”)、輸出設(shè)備106、以及非瞬態(tài)存儲(chǔ)設(shè)備108的系統(tǒng)100。盡管在圖1的示例中僅示出一個(gè)硬件處理器102,但在其他示例中可包括多于一個(gè)硬件處理器。輸入設(shè)備104可包括鍵盤、鼠標(biāo)、軌跡球、或其結(jié)合。輸出設(shè)備106可包括顯示器。用戶經(jīng)由輸入和輸出設(shè)備104和106與圖1的系統(tǒng)交互。
[0015]非瞬態(tài)存儲(chǔ)設(shè)備108可包括隨機(jī)存取存儲(chǔ)器(“RAM”)、硬盤驅(qū)動(dòng)器、光盤只讀存儲(chǔ)器(“⑶-ROM”)、閃存、及其他非瞬態(tài)存儲(chǔ)設(shè)備。存儲(chǔ)設(shè)備108存儲(chǔ)軟件兼容工具110,軟件兼容工具HO包括可由處理器102執(zhí)行的機(jī)器可讀指令。通過(guò)處理器102執(zhí)行軟件兼容工具110引起處理器102實(shí)現(xiàn)本文描述的功能中的一些或全部。存儲(chǔ)設(shè)備108還可包括日志數(shù)據(jù)114、消息數(shù)據(jù)庫(kù)116、約束兼容性數(shù)據(jù)庫(kù)118、以及許可數(shù)據(jù)庫(kù)120。
[0016]軟件兼容工具110準(zhǔn)許用戶創(chuàng)建軟件項(xiàng)目的描述。項(xiàng)目包括已由作者(例如,軟件開(kāi)發(fā)者)創(chuàng)建或正由作者創(chuàng)建的軟件應(yīng)用程序。為了方便討論,以將來(lái)時(shí)態(tài)討論項(xiàng)目,但軟件工具110還可用于分析已存在的軟件項(xiàng)目。
[0017]將創(chuàng)建的項(xiàng)目將包括源代碼,將由作者編寫該源代碼中的一些,且該源代碼中的一些將包括軟件組件,作者將不創(chuàng)建該軟件組件,但該軟件組件將包含在該項(xiàng)目中。例如,作者可將特定的軟件組件,或多個(gè)軟件組件下載到項(xiàng)目中。不是項(xiàng)目的作者編寫的這種軟件組件的使用避免作者不得不創(chuàng)建已存在的軟件組件,且因此,使軟件項(xiàng)目的開(kāi)發(fā)更有效。在本公開(kāi)中,術(shù)語(yǔ)“軟件組件”指將用在軟件項(xiàng)目中、但可由項(xiàng)目的作者編寫的機(jī)器可讀指令的集合。
[0018]軟件組件中的一個(gè)或多個(gè)可服從軟件許可,有時(shí)稱作“開(kāi)源軟件許可”。這種許可準(zhǔn)許使用對(duì)應(yīng)的軟件組件,但要依照某些限制和約束。存在或可在未來(lái)創(chuàng)建許多不同類型的開(kāi)源軟件。
[0019]限制包括對(duì)用軟件組件可做什么的限制??赏ㄟ^(guò)軟件組件的開(kāi)源軟件許可置于軟件組件上的限制的示例包括:
[0020]A.可不修改軟件組件的源代碼
[0021]B.源代碼不可用于商業(yè)用途
[0022]C.可準(zhǔn)許對(duì)源代碼的修改,且可以以例如補(bǔ)丁的獨(dú)立于原始源的形式分發(fā)這種修改。
[0023]不同的或其它限制也是可能的。
[0024]約束包括項(xiàng)目的作者必須履行的責(zé)任。約束是作者必須采取的積極措施,然而,限制是禁止的操作。約束的示例包括:
[0025]A.返回軟件組件的修改。
[0026]B.分發(fā)軟件組件的源代碼。
[0027]C.給軟件組件的原作者以信用。
[0028]D.通過(guò)同樣的軟件許可重新許可結(jié)果項(xiàng)目。
[0029]不同和/或其他約束也是可能的。一個(gè)類型的約束稱為“倒數(shù)約束”。倒數(shù)約束是在某些條件下應(yīng)用的約束責(zé)任,該某些條件要求使用軟件組件的開(kāi)發(fā)者將其工作貢獻(xiàn)給原作者。例如,約束“將對(duì)原始源代碼的任何修改返回給作者”是倒數(shù)約束,或者“在同樣的原始許可下分發(fā)/重新許可整個(gè)工作”是另一種倒數(shù)約束。
[0030]軟件許可定義可應(yīng)用于一個(gè)或多個(gè)“對(duì)象”的限制和約束。對(duì)象可包括源代碼、二進(jìn)制代碼、衍生軟件作品,等等。在一些實(shí)現(xiàn)方式中,許可數(shù)據(jù)庫(kù)120包括一個(gè)或多個(gè)開(kāi)源軟件許可及這種許可的條款(例如,限制和約束)。每個(gè)許可可以以對(duì)象類實(shí)例化的形式存儲(chǔ)在數(shù)據(jù)庫(kù)120中。因此,每個(gè)許可可以包括與一個(gè)或多個(gè)其他對(duì)象相互關(guān)聯(lián)的多個(gè)對(duì)象。在至少一些實(shí)現(xiàn)方式中,在數(shù)據(jù)庫(kù)120中用四個(gè)名稱表示許可一 “許可”、“對(duì)象、“動(dòng)作”和“約束”。這些名稱準(zhǔn)許軟件兼容工具110表示各種許可中的(如果不是全部)大多數(shù)條款。名稱“
當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
依兰县| 历史| 若尔盖县| 常熟市| 雷州市| 探索| 高碑店市| 佛学| 库车县| 松溪县| 镇巴县| 观塘区| 广昌县| 布尔津县| 嘉兴市| 普宁市| 佳木斯市| 平罗县| 神木县| 甘孜县| 施秉县| 岚皋县| 扶沟县| 抚松县| 临沧市| 枝江市| 如东县| 福海县| 汕尾市| 永济市| 清丰县| 雷州市| 穆棱市| 寿光市| 罗甸县| 卢龙县| 修文县| 偏关县| 上高县| 疏勒县| 城固县|