マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

「実行コンテキスト」には色々な定義が有ると思いますが、
ここでは、実行環境の違いで問題が起きた事例から

知っておくべき「実行コンテキスト」発掘していきます。

「実行コンテキスト」には、以下の様々なものがあります。

実行コンテキストの例

CPUの状態(コンテキストスイッチ)

メモリ上の変数

ローカル変数

グローバル変数

TLS

共有メモリ

ユーザ情報

  • ログインユーザや実行アカウントによって変わる情報
  • ログインユーザや実行アカウント毎に変わるので注意が必要。

認証情報

  • 実行アカウント
  • 認証条件(ネゴシエーションの結果、何で認証したか)

権限情報

ユーザの環境変数

ユーザのレジストリ

(ログオン)セッション

どのセッションに属しているか。

ちなみに、Windows Vista/7ではSession 0の分離が行われたため、
単純にサービスはGUIを持てないが、以下の様な裏技がある模様。

ユーザ・プロファイル

ユーザプロファイルの有無(ログインしているか・していないか)。

システムの情報

システムの環境変数

システムのレジストリ

アドレス空間的な

x86

32bit

  • 通常
  • PAE:Physical Address Extension、物理アドレス拡張

x64

  • 64bit
  • 32bit
    • WOW64
      • 物理環境上
      • 仮想環境上

サービス・タスク系

  • サービス・タスク系は一般ユーザが実行する処理と比べると
    実行コンテキストが異なっているため、問題となることが多い。
  • サービス・タスク
  • バッチ
  • サービス
  • タスク・スケジューラ

セキュリティ関連

Group Policy

  • Group Policy
  • Local Security Policy

サンドボックス

サンドボックスなども、コンテキストといえるかもしれません。

  • IE
    • 設定
      • IEセキュリティ強化の構成の有効・無効
      • JavaScript
      • ActiveX
      • HTML5
      • ,etc.
  • その他のブラウザの設定

AppLocker?

特権

DEP機能

有効・無効

その他

標準入出力

標準入出力(stdin、stdout、stderr)は、匿名pipeで実装されている。

pipeで大量の出力がある場合、反対側で読み取らないと、
途中で出力が止まったまま、ずっと待ちになる。

参考


Tags: :インフラストラクチャ, :Windows, :プログラミング


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-02-03 (土) 14:26:41 (2267d)