イントロダクション
「Windows as a Service」と銘打ってデビューしたWindows10ですが、情シスにとっては色々な面倒事を起こしてくれる暴れん坊です。
以前ご紹介したようにWindowsUpdateでパソコンが起動しなくなったり、不要なアプリが勝手に追加されたり(業務PCにゲームを送り込んでくるな!)、「サービスとは何か」を考えずにはいられなくなります。
そんなWindows10のプチ困った現象の解消方法と原因についてお話したいと思います。
「remote desktop configuration サービスによるサインインの処理に失敗しました。この操作を完了するための十分な記憶域がありません」を解消する。
発生している現象について
パソコンの電源を入れます。
ログイン画面が出てくるのでユーザーを選択し、パスワードを入力します。
ログインしようとすると、以下のメッセージが出てきてログインできません。
「remote desktop configuration サービスによるサインインの処理に失敗しました。この操作を完了するための十分な記憶域がありません」
頻度としては不定期で、起こる時もあるし全く起きないときもあります。
発生したことが無い人もいれば、毎日のように表示されている人もいます。
再起動すればそのうち直るので無視している人もいますし、発生する度に問合せてくる人もいます。
そんな現象です。
現象の切り分け
上記現象が発生し、再起動しても再発するような場合は、以下の手順を行ってみてください。
スタートボタン⇒電源とクリックし、Shiftキーを押しながら「再起動」をクリックします。
以下のような画面が表示されるので、「PCの電源を切る」をクリックしてください。
通常通りパソコンを起動します。
この手順で現象が発生しなくなる場合、原因はWindows10の「高速スタートアップ」の可能性が高いです。
そのため「高速スタートアップ」を無効にする設定を行います。
高速スタートアップを無効にする
スタートボタン⇒Windowsシステムツール⇒コントロールパネルをクリックします。
表示方法=カテゴリとして「システムとセキュリティ」をクリックします。
遷移した画面から「電源オプション」をクリックします。
画面左側の「電源ボタンの動作の選択」をクリックします。
遷移した画面で高速スタートアップの設定を変更するためには、「現在利用可能ではない設定を変更します」をクリックします。
これで「高速スタートアップを有効にする(推奨)」が変更できるようになるので、チェックを外して「変更の保存」を行います。
設定は以上です。
そもそも高速スタートアップとは何か
PCのスタートアップを理解する
どこぞのPCベンダーさんのFAQページか社内用のマニュアルくらいのレベルの手順説明でした。
設定はここまでにして、高速スタートアップとは何なのかというお話をしておきます。
Windows10の高速スタートアップは、読んで字のごとくPC起動時のスタートアップを高速化する仕組みです。
WindowsPCの起動はこれまで結構時間がかかっていたので、高速化してくれるのはありがたいのですが、どうやって高速化しているのでしょうか。
パソコンの電源を入れてからWindowsOSが起動するまで大まかに以下のような流れになります。
2.POSTの実行
3.Windowsカーネルのロード
4.デバイスドライバのロード・初期化
5.ログイン
6.ユーザープロファイルの読み込み
BIOSはハードウェアの制御を行うプログラムです。OSが起動すれば、キーボードやマウス、ディスプレイ、CPU、HDDなどの制御は全てOSが主導権を握ります。
その前の段階でこれらを制御するのがBIOSで、マザーボード上のROMに搭載されています。OSが動作しはじめる前の段階で、マザーボードに繋がる各デバイスの制御します。
パソコンの電源を入れたときにメーカーロゴが表示されている間にF2キーとかF10キーを押すとBIOS設定画面に遷移することができます。
POSTはBIOSが行う処理で、簡単に言うと起動前のエラーチェックです。
ハード故障の場合、パソコンの電源を入れると「ピーッ」というビープ音が鳴る場合がありますが、これはPOSTプロセスがデバイスにエラーを検出した際に発生する通知です。
カーネルはアプリケーションとハードウェアを繋ぐOSの機能です。ここまでBIOSで制御していたデバイスの制御をWindowsが行うためのプロセスになります。
アプリケーションがデバイスに対して指示を行う場合、例えばディスプレイへ画面表示を行う等の場合、表示先のディスプレイの仕様によってアプリケーションが仕組みを準備するのは大変です。
そこでアプリケーションからの指示を一旦カーネルが受取り、デバイスに適合できる形に加工してあげているというのがカーネルの役割です。
WindowsカーネルがOS側の機能としてアプリケーションとデバイスの橋渡しをしているのに対して、デバイス側がアプリケーションの指示をハードウェアに伝えるためのプログラムがデバイスドライバです。
外付けのハードウェアをパソコンに接続する場合にインストールすることがあるので比較的馴染みがあるのではないかと思います。
デバイスドライバはデバイス毎に存在します。これらを全て読み込むので、起動時に一番時間がかかるのはこのフェーズです。
高速スタートアップ=前回シャットダウン時のデバイスドライバ情報で起動する
デバイスドライバの読み込みを高速化するために、シャットダウン時に接続しているデバイスのドライバ情報を記憶させておき、起動時にそこからドライバ情報を読み込んでいるのが、高速スタートアップの仕組みで、Windows8以降から実装されています。
一見すると便利そうに見えますが、シャットダウン時と次回起動時でパソコンに接続しているデバイスに変更が無いことが大前提になります。外付けのストレージデバイスを共用で使っていたりすると結構危険なことがあります。
SSDを積んでいればそもそも起動は高速になりますし、無効にしてしまったほうが良さそうです。
あとがき
「高速スタートアップが有効」と表題のエラーの関係は不明
高速スタートアップの仕組みがわかったところで冒頭に戻ると、エラーと高速スタートアップの直接的な関係は現時点では不明です。
ただ高速スタートアップを無効にすると何故かエラーが発生しなくなります。
高速スタートアップについて調べてみると、様々なエラーの原因になっているようです。
どれも理由は定かではないけど無効にしたら解消した、というような話です。
高速スタートアップによるシャットダウンは、Windows7以前のシャットダウンと違い、「休止状態」です。保持される情報はカーネル情報とデバイスドライバだけではなくサービスも含まれるようです。
推測なのですが、サービス情報を保存した際に正しく読み込めない状態になったサービス(冒頭のメッセージの場合remote desktop configuration)がエラーになっているのではないかと考えます。
どっちにしても「高速スタートアップ」は即刻無効にしたほうが良いでしょう。
起動がちょっと早くなる以外、今のところデメリットしかありそうにありません。
この記事が気に入ったら
いいね!をお願いします