English  |  正體中文  |  简体中文  |  Items with full text/Total items : 78852/78852 (100%)
Visitors : 36537520      Online Users : 573
RC Version 7.0 © Powered By DSPACE, MIT. Enhanced by NTU Library IR team.
Scope Tips:
  • please add "double quotation mark" for query phrases to get precise results
  • please goto advance search for comprehansive author search
  • Adv. Search
    HomeLoginUploadHelpAboutAdminister Goto mobile version


    Please use this identifier to cite or link to this item: http://ir.lib.ncu.edu.tw/handle/987654321/92291


    Title: 使用靜態分析偵測 JavaScript 應用程式中的 Race Condition;Detect Race Condition In JavaScript Application with Static Analysis
    Authors: 楊盛傑;Yang, Sheng-Chieh
    Contributors: 軟體工程研究所
    Keywords: 競爭;靜態分析
    Date: 2023-08-02
    Issue Date: 2023-10-04 15:25:34 (UTC+8)
    Publisher: 國立中央大學
    Abstract: 隨著科技的演進,工程師和使用者不斷地嘗試在速度和效率上尋求突
    破,為了達到這一個目的並行 (Concurrency) 這一個概念應運而生,但是也
    因此造成了很多致命的問題,並因此危害到許多系統的執行,在這些問題中
    就有一個是競爭條件 (Race Condition)。
    在現今,人們會透過網路去取得各式各樣的資訊、購物、玩遊戲、交易
    等,為了應付人們大量的請求與需求,讓網路程式支援並行這一功能勢在必
    行,但是在享受並行所帶來的好處同時,也需要正視潛在的危害,這也正是
    本篇論文希望探討並解決的。
    儘管競爭問題一直被不斷地討論,並且提出一個又一個地有效並且準
    確的方法,但是科技的進化與程式語言的迭代,而在 JavaScript 這一個單
    執行緒 (Single-Threaded) 程式語言中,也出現了本不該存在的競爭問題,
    但是作為目前被廣泛使用的客戶端語言,這無疑使得這一個問題無比重要。
    在研究這項問題時,根據競爭條件 (Race Condition) 的特性,我們選用
    了 Call Graph、抽象語法樹 (Abstract Syntax Tree) 以及靜態分析的技術,在
    這些技術的幫助下我們有效並且輕鬆的找出潛在的競爭條件。
    在以下的文章中,我們會詳細的說明並且解釋,我們選用這些技術的方
    法和原因。;With the evolution of technology, engineers and users are constantly trying
    to seek breakthroughs in speed and efficiency. In order to achieve this goal, the
    concept of Concurrency is brought out, but this concept also causes many fatal
    problems, one of these problems is the race condition.
    Nowadays, people use the Internet to obtain all kinds of information, shop,
    play games, trade, etc. In order to handle lots of requests from systems and needs
    of people, it is imperative for the web application to support the concurrent mech-
    anism, but when we enjoy the benefit from concurrency, it is also necessary to
    face up to the potential risk, which is exactly what this paper hopes to explore and
    solve.
    Although the race condition has been constantly discussed, and effective and
    accurate solutions have been proposed one after another, this problem still occur
    in JavaScript applications. Technology continuously evolves, and so do program-
    ming languages, JavaScript, a single-threaded programming language, there are
    also problems that should not exist. However, as the most commonly used client-
    side language, this undoubtedly makes this issue extremely important.
    In our research, we adopt techniques such as Call Graph, Abstract Syntax
    Tree (AST), and static analysis to study and address race conditions. Leveraging
    these techniques, we can effectively and easily identify potential race conditions.
    In this paper, we will provide a detailed explanation of why we chose these
    techniques and the methods we employed. We will explore the characteristics of
    race conditions and demonstrate how Call Graph, Abstract Syntax Tree, and static
    analysis help us identify potential race conditions.
    Appears in Collections:[軟體工程研究所 ] 博碩士論文

    Files in This Item:

    File Description SizeFormat
    index.html0KbHTML102View/Open


    All items in NCUIR are protected by copyright, with all rights reserved.

    社群 sharing

    ::: Copyright National Central University. | 國立中央大學圖書館版權所有 | 收藏本站 | 設為首頁 | 最佳瀏覽畫面: 1024*768 | 建站日期:8-24-2009 :::
    DSpace Software Copyright © 2002-2004  MIT &  Hewlett-Packard  /   Enhanced by   NTU Library IR team Copyright ©   - 隱私權政策聲明