ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
無料
ブラウザよりも高速アクセス!
 

アセンブリ (共通言語基盤)

索引 アセンブリ (共通言語基盤)

共通言語基盤においてアセンブリ (assembly) とはコンパイルされたコードライブラリのことであり、配置・バージョン管理・セキュリティ管理の単位となる。.

15 関係: ハッシュ関数ファイルシステムダイナミックリンクライブラリアセンブリ (プログラミング)グローバル アセンブリ キャッシュコンパイラ共通中間言語共通言語基盤共通言語ランタイム鍵 (暗号)Microsoft Visual StudioMicrosoft WindowsPortable Executable拡張子.NET Framework

ハッシュ関数

ハッシュ関数で名前と0から15までの整数をマッピングしている。"John Smith" と "Sandra Dee" のハッシュ値が衝突している点に注意。 ハッシュ関数 (ハッシュかんすう、hash function) あるいは要約関数とは、あるデータが与えられた場合にそのデータを代表する数値を得る操作、または、その様な数値を得るための関数のこと。ハッシュ関数から得られた数値のことを要約値やハッシュ値または単にハッシュという。 ハッシュ関数は主に検索の高速化やデータ比較処理の高速化、さらには改竄の検出に使われる。例えば、データベース内の項目を探したり、大きなファイル内で重複しているレコードや似ているレコードを検出したり、核酸の並びから類似する配列を探したりといった場合に利用できる。 ハッシュ関数の入力を「キー (key)」と呼ぶ。ハッシュ関数は2つ以上のキーに同じハッシュ値をマッピングすることがある。多くの場合、このような衝突の発生は最小限に抑えるのが望ましい。したがって、ハッシュ関数はキーとハッシュ値をマッピングする際に可能な限り一様になるようにしなければならない。用途によっては、他の特性も要求されることがある。ハッシュ関数の考え方は1950年代に遡るが、ハッシュ関数の設計の改善は今でも盛んに研究されている。 ハッシュ関数は、チェックサム、チェックディジット、フィンガープリント、誤り訂正符号、暗号学的ハッシュ関数などと関係がある。これらの概念は一部はオーバーラップしているが、それぞれ用途が異なり、異なった形で設計・最適化されている。 またプログラミング言語の一部(Perl、Ruby等、主に高等言語とされる一般的なプログラミング言語の多く)においては、連想配列のことを伝統的にハッシュと呼ぶが、これは連想配列そのもののプログラムの内部的実装に拠るものであり、ハッシュ関数そのものとは全く異なる。連想配列はハッシュ関数の応用例の一つのハッシュテーブルの実用例である。.

新しい!!: アセンブリ (共通言語基盤)とハッシュ関数 · 続きを見る »

ファイルシステム

ファイルシステムは、コンピュータのリソースを操作するための、オペレーティングシステム (OS) が持つ機能の一つ。ファイルとは、主に補助記憶装置に格納されたデータを指すが、デバイスやプロセス、カーネル内の情報といったものもファイルとして提供するファイルシステムもある。 より正確に定義すれば、ファイルシステムは抽象データ型の集まりであり、ストレージ、階層構造、データの操作/アクセス/検索のために実装されたものである。ファイルシステムを特殊用途のデータベース管理システム (DBMS) と見なせるかどうかは議論があるが、ファイルシステムとデータベース管理システムには多くの共通点がある。.

新しい!!: アセンブリ (共通言語基盤)とファイルシステム · 続きを見る »

ダイナミックリンクライブラリ

ダイナミックリンクライブラリ (Dynamic Link Library: DLL、動的リンクライブラリ)は、ソフトウェアの一種。動的リンクを使ったライブラリのこと。あるいは、Windowsで使用されるファイル形式を特に意図して、この語が用いられる場合もある。 複数のプログラムから共通に利用できるように種々の機能をプログラムとは分離させた、シェアードライブラリ(共有ライブラリ)でもあることが多い。.

新しい!!: アセンブリ (共通言語基盤)とダイナミックリンクライブラリ · 続きを見る »

アセンブリ (プログラミング)

アセンブリとは、型と他の資源から構成されるランタイムユニットである。アセンブリ内にある全ての型は同じバージョン番号を持つ。 しばしば、1つのアセンブリは1つだけの名前空間を持ち、1つのプログラムで使用される。しかしそのアセンブリはいくつかの名前空間を超えて広がる。また、1つの名前空間がいくつかのアセンブリを超えて拡大することもある。巨大な設計において、アセンブリは「マニフェスト」(つまり内容のテーブル)によって共に収容された複数のファイルから構成されてもよい。 C#やVB.NETなどの.NET言語において、アセンブリは使用される最小の配置ユニットであり、.NET内のコンポーネントである。たとえばMicrosoft Windows環境の場合、具体的にはDLLやEXEとなる。転じて、.NETコンポーネントではないネイティブのDLL/EXEも、「アセンブリ」と呼ばれることがある。Javaにおいて、それはJARファイルである。.

新しい!!: アセンブリ (共通言語基盤)とアセンブリ (プログラミング) · 続きを見る »

グローバル アセンブリ キャッシュ

ーバル アセンブリ キャッシュ (、略称:GAC) は、マイクロソフト仕様の共通言語基盤 (、略称:CLI) においてのコンピューター全域で共有されるCLIアセンブリキャッシュである。 グローバルアセンブリキャッシュは中央リポジトリで特別に管理されており、そのようなアプローチはDLL地獄のような欠点につながった共有ライブラリの概念の欠陥に伴う落とし穴を避けるために有効である。.

新しい!!: アセンブリ (共通言語基盤)とグローバル アセンブリ キャッシュ · 続きを見る »

コンパイラ

ンパイラ(英:compiler)とは、コンピュータ・プログラミング言語の処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語に(あるいは、元のプログラムよりも低い水準のコードに)変換するプログラムである。.

新しい!!: アセンブリ (共通言語基盤)とコンパイラ · 続きを見る »

共通中間言語

共通中間言語(きょうつうちゅうかんげんご、Common Intermediate Language、略称: CIL("sil" や "kil" と発音される))は、共通言語基盤 (Common Language Infrastructure、CLI) で定義された最も低水準な人間が解読可能なプログラミング言語であり、.NET FrameworkやMonoにより使用される。CLI互換な実行環境をターゲットとしている言語はCILにコンパイルされる。そのCILはバイトコードスタイルフォーマットであるオブジェクトコードにより組み立てられている。CILはオブジェクト指向なアセンブリ言語であり、完全なスタックベースである。そのバイトコードはネイティブコードに翻訳されるか、仮想機械により実行される。.NET言語がベータリリースである間、CILはMicrosoft Intermediate Language (MSIL) と呼ばれていた。C#およびCLIの標準化により、現在ではバイトコードは公式にCILと呼ばれる。.

新しい!!: アセンブリ (共通言語基盤)と共通中間言語 · 続きを見る »

共通言語基盤

共通言語基盤(きょうつうげんごきばん、Common Language Infrastructure、略称: CLI)は、.NET Frameworkの基幹を構成する実行コードや実行環境などについてマイクロソフトが策定した仕様である。仕様は、ECMA-335 および ISO/IEC 23271 として標準化され公開されている。CLIは、プログラミング言語やコンピュータ・アーキテクチャに依存しない環境を定義しており、様々な高水準言語で書いたソースコードが書き直すことなく他のプラットフォームでも使える。 共通言語ランタイム (CLR) はCLIの仕様を実装したものの一つである。CLIに適合するプログラムは全て共通中間言語 (CIL) へコンパイルされる。CILは、ハードウェアから抽象化された中間言語であり、実行時にはVESが機械語へコンパイルする。;概念.

新しい!!: アセンブリ (共通言語基盤)と共通言語基盤 · 続きを見る »

共通言語ランタイム

CLRの動作イメージ。バイトコードを機械語に変換、実行する。 共通言語ランタイム (Common Language Runtime, CLR) とは、.NET Frameworkアプリケーションを実行するための仮想機械で、共通言語基盤 (CLI) のマイクロソフト自身による実装。.NET Framework 4.x で使用されている CLR は Windows 上のみで動作する。.NET Core 5 はMITライセンスのオープンソースになり、CoreCLRはWindows、macOS、Linux、FreeBSD で動作する。 CLRは、共通中間言語 (CIL) と呼ばれる、プログラミング言語や環境に依存しない中間言語を解釈する。CILは実行時にJITコンパイラによって機械語に変換され、実行される。.NET Framework 4.6 では64ビット版は RyuJIT という名称のJITコンパイラが搭載された。 そのほかのCLRの役割・機能には、メモリ管理(ガベージコレクション)、型とアセンブリの管理、スレッド管理、例外処理、セキュリティがある。.

新しい!!: アセンブリ (共通言語基盤)と共通言語ランタイム · 続きを見る »

鍵 (暗号)

暗号技術において、鍵(かぎ、key)とは、暗号アルゴリズムの手順を制御するためのデータである。 鍵は、同じ暗号方式を使用しながら利用者毎に暗号化の手順を異なるものにするために考え出されたものであるが、暗号だけではなく、デジタル署名やメッセージ認証コード(Keyed-hashなど)でも使用される。擬似乱数で用いられるシード(種)も鍵の一種である。 アルゴリズムが公開されている現代暗号においては、鍵が第三者に渡ることは、暗号文の秘匿性などが失われることを意味するので、鍵は非常に重要な役割を果たしている。.

新しい!!: アセンブリ (共通言語基盤)と鍵 (暗号) · 続きを見る »

Microsoft Visual Studio

Microsoft Visual Studio(マイクロソフト ビジュアル スタジオ)はマイクロソフトのソフトウェア開発製品群およびそれらを管理する統合開発環境である。.

新しい!!: アセンブリ (共通言語基盤)とMicrosoft Visual Studio · 続きを見る »

Microsoft Windows

Microsoft Windows(マイクロソフト ウィンドウズ)は、マイクロソフトが開発・販売するオペレーティングシステム (OS) の製品群。グラフィカルユーザインタフェース (GUI)を採用している。.

新しい!!: アセンブリ (共通言語基盤)とMicrosoft Windows · 続きを見る »

Portable Executable

Portable Executable (PE) は、主に32ビット及び64ビット版のMicrosoft Windows上で使用される実行ファイルのファイルフォーマットを指す。PEフォーマット自体はオペレーティングシステムやハードウェアに依存しない設計となっているため、UEFIアプリケーションのバイナリフォーマットには、PEが採用されている。また、前述のUEFIとの整合性の確保やMicrosoft製OSとのマルチブート環境の構築を容易にする目的で、x86およびx86-64アーキテクチャにおけるLinuxカーネル実行ファイルやブートローダなど、非Windows系OSのシステムファイルの一部にも用いられている。 EXEフォーマットとの互換性のため、MS-DOS上で実行すると「This program cannot be run in DOS mode.」のようにDOSで実行されない旨が表示され、プログラムが終了するなどのMS-DOSプログラムが先頭に付く。その後ろに、PE固有の識別子およびCOFFに似たデータ構造があり、MS-DOSヘッダによってそのオフセットが指されている。また、さまざまなCPUアーキテクチャに対応するため、内部に判別用のフラグを持つ。実行時にDLLというファンクション群を動的にリンクし、コンポーネントレベルでのバグフィックス、互換性の維持が行われるようになっている。また、リソース領域にアイコン等を格納でき、GUI上で表示された場合アイコンがグラフィカルに表示され、ソフトウェア判別を容易にできる。.

新しい!!: アセンブリ (共通言語基盤)とPortable Executable · 続きを見る »

拡張子

拡張子(かくちょうし、filename extension)とは、ファイルの種類を識別するためにファイルの名前(ファイル名)の末尾につけられる文字列。ファイル名の本体と拡張子は "."(ピリオド、ドット)で区切られ、拡張子はアルファベットと数字の組み合わせで、歴史的には3文字以内が好まれたが、それ以上の場合もある。拡張子は、オペレーティングシステム (OS) においてファイルの判別のために任意につけられるもので、必ずしも必須ではない。拡張子が適切でない場合は、システムまたはアプリケーションソフトウェアの動作に影響を及ぼす場合がある。.tar.gzのように複数のピリオドで区切っているケースもあるが、最後のピリオド以降を拡張子と判断するシステムが一般的である。 Mac OSでは、OSレベルでは各ファイルに埋め込まれたクリエータとファイルタイプで識別するシステムを持っている。macOSでは拡張子も利用して動作するようになり、Mac OS X v10.4 TigerからはUniform Type Identifier (UTI) なる枠組みでデータの種類を判別するようになった。 Unix系OSではファイル名の終端でファイルの種類を表す慣習があり、一般にはsuffixと呼ぶが、必ずしもピリオドで区切るとは限らない。カンマで区切る「,v」や、特に区切り文字使わずに「-」や「~」や「rc」を付けるケースもある。これはあくまでも整理上の便宜であってシステム上意味はない。ただしmakeコマンドがsuffixに基づいたルールに従って動作したり、lsコマンドが色分けして表示するようなケースはある。またデスクトップ環境であるKDE、GNOME、CDE等も拡張子に基づく動作をする。 OS以外では、MIMEタイプの設定に拡張子を利用していることなどがあげられる。Apache HTTP Serverはindex.ja.htmlとindex.html.jaの両方を「日本語(ja)のhtmlファイル」と判断する。最後尾でなくても拡張子として判断する一例である。 こうしたことから、かつては一部のシステムのみの概念だった拡張子は、現在は広い範囲で使われていることがわかる。.

新しい!!: アセンブリ (共通言語基盤)と拡張子 · 続きを見る »

.NET Framework

Microsoft.NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発・実行環境である。 Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。.

新しい!!: アセンブリ (共通言語基盤)と.NET Framework · 続きを見る »

ここにリダイレクトされます:

アセンブリ (.NET Framework)

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »