徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
安装
比浏览器更快的访问!
 

程序自修改

指数 程序自修改

程序自修改(Self-modifying code)是指程序在运行期间(Run time)修改自身指令。可能的用途有:病毒利用此方法逃避杀毒软件的查杀,反静态分析,反盗版 ,單晶片程序升级。.

15 关系: 執行期单片机反射 (计算机科学)中央处理器唯讀記憶體类 (计算机科学)EICAR标准反病毒测试文件随机存取存储器靜態程序分析计算机病毒黑客電子計算機Java杀毒软件操作系统

執行期

執行時期(Run time)在電腦科學中代表一個電腦程式從開始執行到終止執行的運作、執行的時期。與執行時期相對的其他時期包括:設计時期(design time)、編譯時期(compile time)、鏈結時期(link time)、與載入時期(load time)。 而執行環境是一種為正在執行的程序或程式提供軟體服務的虛擬機械環境。它有可能是由作業系統自行提供,或由執行此程式的母程式提供。 通常由作業系統負責處理程式的載入:利用載入器(loader)讀入程式碼,接著進行基本的記憶體配置,並視需要聯結此程式指定的所有動態链接庫。有些程式語言會由此語言提供的運行環境處理上述工作。 程式碼的某些問題,只能在執行期間進行偵錯動作(或較有效率),例如邏輯錯誤或陣列邊際檢查等便屬此類。因此不管撰寫與測試得多麼精細,有些錯誤必須在實際上線並處理真實資料的情況下才能找出。因此,程式使用者也許會遇到諸如執行時期錯誤之類的訊息。.

新!!: 程序自修改和執行期 · 查看更多 »

单片机

--,全称--(single-chip microcomputer),又稱--(microcontroller),是把中央处理器、存储器、定时/计数器(timer/counter)、各種输入输出接口等都集成在一块-zh-hans:集成电路; zh-hant:積體電路;-芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的--;由於單晶片微電腦常用於當控制器故又名single chip microcontroller。“单晶片”是台湾对单片机的称呼;中国大陆主要采用“--”的称呼,英文缩写为MCU。.

新!!: 程序自修改和单片机 · 查看更多 »

反射 (计算机科学)

在计算机科学中,反射是指计算机程序在运行时(Run time)可以访问、检测和修改它本身状态或行为的一种能力。见。用比喻来说,反射就是程序在运行的时候能够“观察”并且修改自己的行为。 要注意术语“反射”和“内省”(type introspection)的关系。内省(或称“自省”)机制仅指程序在运行时对自身信息(称为元数据)的检测;反射机制不仅包括要能在运行时对程序自身信息进行检测,还要求程序能进一步根据这些信息改变程序状态或结构。.

新!!: 程序自修改和反射 (计算机科学) · 查看更多 »

中央处理器

中央处理器 (Central Processing Unit,缩写:CPU),是计算机的主要设备之一,功能主要是解释计算机指令以及处理计算机软件中的数据。计算机的可编程性主要是指对中央处理器的编程。中央处理器、内部存储器和输入/输出设备是现代电脑的三大核心部件。1970年代以前,中央处理器由多个独立单元构成,后来发展出由集成电路制造的中央处理器,這些高度收縮的元件就是所謂的微处理器,其中分出的中央处理器最為复杂的电路可以做成单一微小功能强大的单元。 中央处理器廣義上指一系列可以执行复杂的计算机程序的逻辑机器。这个空泛的定义很容易地将在“CPU”这个名称被普遍使用之前的早期计算机也包括在内。无论如何,至少从1960年代早期开始,这个名称及其缩写已开始在电子计算机产业中得到广泛应用。尽管与早期相比,“中央处理器”在物理形态、设计制造和具体任务的执行上有了极大的发展,但是其基本的操作原理一直没有改变。 早期的中央处理器通常是为大型及特定应用的计算机而定制。但是,这种昂贵的为特定应用定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由单个晶体管组成的大型机和微机年代,随着集成电路的出现而加速。IC使得更为复杂的中央处理器可以在很小的空间中设计和制造(在微米的數量级)。中央处理器的标准化和小型化都使得这一类数字设备和電子零件在现代生活中的出现频率远远超过有限应用专用的计算机。现代微处理器出现在包括从汽车到手机到儿童玩具在内的各种物品中。.

新!!: 程序自修改和中央处理器 · 查看更多 »

唯讀記憶體

唯讀記憶體(Read-Only Memory,ROM)是一種半導體記憶體,其特性是一旦儲存資料就無法再將之改變或刪除,且內容不會因為電源關閉而消失。在電子或電腦系統中,通常用以儲存不需經常變更的程式或資料,例如早期的家用電腦如Apple II的監督程式 、BASIC語言直譯器、與硬體點陣字型,個人電腦IBM PC/XT/AT的BIOS(基本输入输出系統)與IBM PC/XT的BASIC直譯器,與其他各種微電腦系統中的韌體(Firmware),均儲存在ROM內。.

新!!: 程序自修改和唯讀記憶體 · 查看更多 »

类 (计算机科学)

在物件導向程式設計,类(class)是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的和方法。 类的更严格的定义是由某种特定的元数据所组成的内聚的包。它描述了一些对象的行为规则,而这些对象就被称为该类的实例。类有接口和结构。接口描述了如何通过方法与类及其实例互操作,而结构描述了一个实例中数据如何划分为多个属性。类是与某个层的对象的最具体的类型。类还可以有运行时表示形式(元对象),它为操作与类相关的元数据提供了运行时支持。 支持类的编程语言在支持与类相关的各种特性方面都多多少少有一些微妙的差异。大多数都支持不同形式的类继承。许多语言还支持提供封装性的特性,比如访问修饰符。类的出现,为面向对象编程的三个最重要的特性(封装性、继承性、多态性),提供了实现的手段。.

新!!: 程序自修改和类 (计算机科学) · 查看更多 »

EICAR标准反病毒测试文件

EICAR标准反病毒测试文件,又称EICAR测试文件, 是由欧洲反计算机病毒协会(EICAR)与计算机病毒研究组织(CARO)研制的文件, 用以测试杀毒软件的相应程度。不同于使用可能造成实际破环的实体恶意软件,该文件允许人们在没有计算机病毒的情况下测试杀毒软件。 杀毒软件的开发者将EICAR字符视为测试病毒,与其他鉴别标识相似。合格的病毒扫描器在发现文件时,会精确地采用相同方式处置,如同发现一个严重的病毒时那样。注意并非所有病毒扫描器是合格的,有些病毒扫描器会在精确识别后保留文件。 EICAR测试字符的用法要比直接测试灵活:包含EICAR测试字符的文件会被压缩或者存档,并且杀毒软件会尝试删除压缩文件中的测试字符。.

新!!: 程序自修改和EICAR标准反病毒测试文件 · 查看更多 »

随机存取存储器

随机存取存储器(Random Access Memory,缩写:RAM),也叫主存,是与CPU直接交换数据的内部存储器。它可以隨時读写(重新整理時除外,見下文),而且速度很快,通常作为操作系统或其他正在运行中的程式的临时資料存储媒介。 主記憶體(Main memory)即電腦內部最主要的記憶體,用來載入各式各樣的程式與資料以供CPU直接執行與運用。由於DRAM的性價比很高,且擴展性也不錯,是現今一般電腦主記憶體的最主要部分。2014年生產電腦所用的主記憶體主要是DDR3 SDRAM,而2016年開始DDR4 SDRAM逐漸普及化,筆電廠商如華碩及宏碁開始在筆電以DDR4記憶體取代DDR3L。.

新!!: 程序自修改和随机存取存储器 · 查看更多 »

靜態程序分析

態程序分析(Static program analysis)是指在不執行计算机程序的條件下,進行程序分析的方法。有些程序分析需要在程序執行時才能進行,這種程序分析稱為。大部份的靜態程序分析的對象是針對特定版本的源代码,也有些靜態程序分析的對象是目标代码。靜態程序分析一詞多半是指配合靜態程序分析工具進行的分析,人工進行的分析一般稱為或代码审查。 靜態程序分析的複雜程度依所使用的工具而異,簡單的只考慮個別语句及声明的行為,複雜的可以分析程序的完整源代码。不同靜態程序分析技术对分析得到的資訊的用途也有所不同,簡單的可以是高亮标识可能存在的代碼錯誤(如lint),複雜的可以是形式化方法,也就是用數學的方式證明程式的某些行為符合其設計规约。 軟體度量和反向工程可以視為一種靜態程序分析的方式。在實務上,在定義所謂的軟體品質指標(software quality objectives)後,軟體度量的推導及程序分析常一起進行,在開發嵌入式系統時常會用這種方式進行。 靜態程序分析的商業用途可以用來驗證安全關鍵電腦系統中的軟體,並指出可能有计算机安全隐患的程式碼,這類的應用越來越多。例如以下的產業已確定用靜態程序分析作為提昇複雜軟體品質的方法:.

新!!: 程序自修改和靜態程序分析 · 查看更多 »

计算机病毒

电脑病毒(computer virus),或稱電子計算機病毒。是一種在人为或非人为的情况下产生的、在用戶不知情或未批准下,能自我复制或運行的電腦程序;電腦病毒往往會影響受感染電腦的正常運作,或是被控制而不自知,也有電腦正常運作僅盜竊資料等用戶非自發啟動的行為。.

新!!: 程序自修改和计算机病毒 · 查看更多 »

黑客

黑客(Hacker)通常是指对计算机科学、編程和设计方面具高度理解的人,包含了下列人物:.

新!!: 程序自修改和黑客 · 查看更多 »

電子計算機

--,亦稱--,计算机是一种利用数字电子技术,根据一系列指令指示其自动执行任意算术或逻辑操作序列的设备。计算机遵循被称为“程序”的一般操作集的能力使他们能够执行极其广泛的任务。 计算机被用作各种工业和消费设备的控制系统。这包括简单的特定用途设备(如微波炉和遥控器)、工业设备(如工业机器人和计算机辅助设计),以及通用设备(如个人电脑和智能手机之类的移动设备)等。尽管计算机种类繁多,但根据图灵机理论,一部具有最基本功能的计算机,应当能够完成任何其它计算机能做的事情。因此,理论上从智能手机到超级计算机都应该可以完成同样的作业(不考虑时间和存储因素)。由于科技的飞速进步,下一代计算机总是在性能上能够显著地超过其前一代,这一现象有时被称作“摩尔定律”。通过互联网,计算机互相连接,极大地提高了信息交换速度,反过来推动了科技的发展。在21世纪的现在,计算机的应用已经涉及到方方面面,各行各业了。 自古以来,简单的手动设备——就像算盘——帮助人们进行计算。在工业革命初期,各式各样的机械的出现,其初衷都是为了自动完成冗长而乏味的任务,例如织机的编织图案。更复杂的机器在20世纪初出现,通过模拟电路进行复杂特定的计算。第一台数字电子计算机出现于二战期间。自那时以来,电脑的速度,功耗和多功能性不断增加。在现代,机械计算--机的应用已经完全被电子计算机所取代。 计算机在组成上形式不一,早期计算机的体积足有一间房屋的大小,而今天某些嵌入式计算机可能比一副扑克牌还小。当然,即使在今天依然有大量体积庞大的巨型计算机为特别的科学计算或面向大型组织的事务处理需求服务。比较小的,为个人应用而设计的称为微型计算机(Personal Computer,PC),在中國地區简称為「微机」。我們今天在日常使用“计算机”一词时通常也是指此,不过现在计算机最为普遍的应用形式却是嵌入式,嵌入式计算机通常相对简单、体积小,并被用来控制其它设备——无论是飞机、工业机器人还是数码相机。 同计算机相关的技术研究叫计算--机科学,而「计算机技术」指的是将计算--机科学的成果应用于工程实践所派生的诸多技术性和经验性成果的总合。「计算机技术」与「计算机科学」是两个相关而又不同的概念,它们的不同在于前者偏重于实践而后者偏重于理论。至於由数据为核心的研究則称為信息技术。 传统上,现代计算机包括至少一个处理单元(通常是中央处理器(CPU))和某种形式的存储器。处理元件执行算术和逻辑运算,并且排序和控制单元可以响应于存储的信息改变操作的顺序。外围设备包括输入设备(键盘,鼠标,操纵杆等)、输出设备(显示器屏幕,打印机等)以及执行两种功能(例如触摸屏)的输入/输出设备。外围设备允许从外部来源检索信息,并使操作结果得以保存和检索。.

新!!: 程序自修改和電子計算機 · 查看更多 »

Java

Java是一種廣泛使用的電腦程式設計語言,擁有跨平台、物件導向、泛型程式設計的特性,广泛应用于企业级Web应用开发和移动应用开发。 任職於昇陽電腦的詹姆斯·高斯林等人于1990年代初开发Java語言的雛形,最初被命名为Oak,目標設定在家用电器等小型系統的程式语言,應用在电视机、电话、闹钟、烤面包机等家用电器的控制和通訊。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代網際網路的发展,Sun公司看見Oak在網際網路上应用的前景,于是改造了Oak,於1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的-zh-hans:指针; zh-hant:指標;-,改以-zh-hans:引用; zh-hant:參照;-取代,同時移除了C++中的--和多重继承特性,改用接口取代,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。昇陽電腦对Java语言的解释是:「Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言」 Java不同於一般的编译語言或直譯語言。它首先将源代码编译成字节码,然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编写,到处运行”的跨平台特性。在早期JVM中,这在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的執行速度有了大幅提升。 与传统型態不同,Sun公司在推出Java時就将其作为开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。“Java语言靠群体的力量而非公司的力量”是 Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同,此外,微软公司後來推出了与之竞争的.NET平台以及模仿Java的C#语言。後來Sun公司被甲骨文公司併購,Java也隨之成為甲骨文公司的產品。 現時,行動作業系統Android大部分的代碼採用Java 程式設計語言編程。.

新!!: 程序自修改和Java · 查看更多 »

杀毒软件

杀毒软件(Antivirus software)使用於偵測、移除電腦病毒、電腦蠕蟲、和特洛伊木馬程式。防毒軟體通常含有即時程序監控识别、惡意程式掃描和清除和自動更新病毒資料庫等功能,有的防毒軟體附加損害恢復等功能,是電腦防禦系統(包含防毒軟體,防火牆,特洛伊木馬程式和其他惡意軟體的防護及刪除程序,入侵防禦系統等)的重要組成。.

新!!: 程序自修改和杀毒软件 · 查看更多 »

操作系统

操作系统(operating system,縮寫作 OS)是管理计算机硬件與软件資源的计算机程序,同时也是计算机系统的核心与基石。操作系统需要处理如管理與配置内存、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作网络與管理文件系统等基本事務。操作系统也提供一個讓使用者與系統互動的操作界面。 操作系统的型態非常多樣,不同機器安裝的操作系统可從簡單到複雜,可從行動電話的嵌入式系统到超級電腦的大型作業系統。許多操作系统製造者對它涵盖范畴的定义也不尽一致,例如有些操作系统整合了图形用户界面,而有些僅使用命令行界面,而將图形用户界面視為一種非必要的應用程式。 操作系统理论在计算机科学中,為歷史悠久的分支;。.

新!!: 程序自修改和操作系统 · 查看更多 »

重定向到这里:

自修改代码自我修改程式碼

传出传入
嘿!我们在Facebook上吧! »