リソース_(Windows)とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > リソース_(Windows)の意味・解説 

リソース (Windows)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/06/15 13:59 UTC 版)

Microsoft Windowsにおけるリソース (: resource) には、いくつかの意味がある。

計算資源としてのリソース

コンピュータ計算資源のことを意味する用語としてリソースが使われる。Windows Vista以降には、リソース モニター英語版というシステムアプリケーションが標準搭載されており、CPUメインメモリ、ネットワークの使用状況などを監視することができる。

埋め込みデータとしてのリソース

リソースは、実行ファイル(EXE)やダイナミックリンクライブラリ(DLL)に埋め込まれた読み込み専用のデータである。Portable Executableフォーマットにはリソース用の領域が存在する。

Windows APIでは、アプリケーションソフトウェアに含まれるリソースにアクセスする抽象化された方法を提供している。

種類

各リソースは型と名前を持ち、どちらも数値識別子か文字列である。

Windowsには予め定義されたリソースの型として以下のものがある。

プログラマは独自リソースの型を新たに定義することもできる。

C言語およびC++によるWin32デスクトップアプリケーション開発では、リソーススクリプトと呼ばれるテキストファイルを用いて上記リソースを記述する[1]Microsoft Visual Studioにはリソースエディターが搭載されており、GUIを使用して直感的にリソーススクリプトを編集することもできる[2].NET Frameworkによる開発では、より抽象化・洗練されており、主にXMLリソースファイル(.resx)を使用してアセンブリのリソースを記述する[3]。さらにWPFでは、コントロールやスタイルなどのリソースをXAMLで記述することができる[4][5]

その他、マニフェストリソースと呼ばれるXML形式のリソースファイルもある。こちらはビジュアルスタイルの有効化[6]UACの権限昇格要求[7]DPIスケーリング[8]など、OSの機能に対するアプリケーションの振る舞いを宣言するために使われる。Microsoft Visual C++では、リンカーオプションでマニフェストリソースをアプリケーションバイナリに結合できるが、プロジェクトファイル(.vcxproj)によってマニフェスト項目を設定したり、C/C++のソースファイル中に#pragma commentディレクティブを使ってマニフェスト項目を記述したりすることもできる[9]

日本語や英語といった言語ごとにリソースを用意し、システムの言語設定に応じてUIをローカライズすることもできる。言語ごとのリソースのみを含むDLL(サテライトDLLまたはサテライトアセンブリ)を用意し、アプリケーションコードによって明示的に言語リソースを選択することもできる[10][11]

使用法

Windowsがプログラムファイルに対応して表示するアイコンはEXEファイル内の最初のアイコンリソースである。EXEファイル内にアイコンリソースがない場合、標準のアイコンが表示される。

サードパーティ製のリソースエディター

EXEファイルやDLLファイルに埋め込まれたリソースを編集できるサードパーティ製のエディターがいくつかある。一般にアプリケーション内の文字列を別の言語に変換するのに使ったり、アイコンやビットマップを変更するのに使ったりするが、使用はすべて自己責任となる。

システムリソース

システムリソースとはWindowsおよびアプリケーションが使用するKERNELリソース、USERリソース、GDIリソースと呼ばれるメモリ領域のことである。アプリケーションを管理するのがKERNELリソース、ダイアログボックスやウインドウなどの情報を格納するのがUSERリソース、フォントやビットマップ、アイコンなどの情報を格納するのがGDIリソースである。一般に起動しているアプリケーションが多いと使用するシステムリソースも多くなる。システムリソースの残量として表示されるのはいずれかの少ない方の容量でリソース不足になるとウインドウを開くことが出来なくなったりフリーズなどの不具合が発生する。

システムリソースという用語は16ビットOSであるWindows 3.x系で初めて登場した。Windows 3.0ではUSERとGDIの2つのリソースがありそれぞれ64KBのサイズであった。このサイズは16ビットCPUの1つのセグメントの大きさでありパフォーマンス上の理由でこのサイズとなった。しばしば勘違いされるがシステムリソースはWindowsで導入されたものであり64KBの制限はパフォーマンスを考慮した設計上の理由であるためMS-DOSやその互換性による制限ではない。Windows 3.1では容量不足の問題を解決するためUSERが128KBに拡張され利用方法の工夫でより少ないシステムリソースを使用するように改善された。

32ビットOSであるWindows 9x系ではシステムリソースが32ビット化され、2つのUSERリソースと1つのGDIリソースがそれぞれ2MB、合計で6MBの容量となった。しかし32ビットのシステムリソースは32ビットWindowsアプリケーションでしか使えず、16ビットWindowsアプリケーションと一部のOSの機能は互換性の理由で容量の少ない16ビットのシステムリソースを使用するため、多くのメモリを搭載していたとしても依然としてリソース不足になることがことがあった。つまりWindows 9x系で問題となるリソース不足は16ビットのシステムリソース不足のことである[12]

Windows NT系のOSではシステムリソースは存在せず、同等の役目をするのはデスクトップヒープもしくはデスクトップアプリケーションヒープである。

ツール

脚注


「リソース (Windows)」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「リソース_(Windows)」の関連用語

リソース_(Windows)のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



リソース_(Windows)のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのリソース (Windows) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2024 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2024 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2024 GRAS Group, Inc.RSS