view user/Itsuki/notes/8-25.md @ 107:22cd14055697

backup 2022-08-03
author autobackup
date Wed, 03 Aug 2022 00:10:03 +0900
parents b6c284fd5ae4
children
line wrap: on
line source

# 進捗報告 
## 研究目的
- ペアプログラミングなど一つのファイルを複数人で編集する有効的手法の一つとして, 同じファイルを複数人が場所を 問わずに同時編集することができるリモートエディタをあげられる.
- リモートエディタ機能を持つ既存のテキストエディタとしてVisual Studio Code(VScode)のLive Share機能が挙げられる。
    - プログラマーには個人が各々慣れ親しんだ編集環境が存在する。
    - 編集に参加する全員がVScodeの環境を取り入れなければならない。
- 参加者が好みの異なるエディタ環境で同時編集が行えるリモートエディタを作成したい。
- 異なるマシン上のエディタ同士の通信は、当研究室が開発する分散フレームワークChristieを用いる。
- 既存のエディタのセッション実現の始めとしてIntelJでの接続を試みる。

## 進捗内容
### リモートエディタ
- IntelJからプラグインでTopologyManagerへ接続する方法を探してました。
    - CGM(CodeGearManager)がThreadクラスを基盤に作られているのでThreadクラスのメソッドを調べてました。
    - プラグインな関係上staticなメソッドで見つけられたら楽だな〜と
- 今のところThread.getAllStackTraces()が有力そう?スタックトレース(スレッドへの仕事の割り振り履歴)を表示してくれる。
    - CGMとして作られたスレッドが検知できることはわかった。
    - TopologyManagerがどのスレッドで行われているかは判別できるかどうかが問題。 

```
Thread.getAllStackTraces() 

{Thread[Signal Dispatcher,9,system]=[Ljava.lang.StackTraceElement;@6d78f375, Thread[ACCEPT10000,5,main]=[Ljava.lang.StackTraceElement;@50c87b21, Thread[Reference Handler,10,system]=[Ljava.lang.StackTraceElement;@5f375618, Thread[pool-1-thread-2,5,main]=[Ljava.lang.StackTraceElement;@1810399e, Thread[main,5,main]=[Ljava.lang.StackTraceElement;@32d992b2, Thread[ACCEPT10001,5,main]=[Ljava.lang.StackTraceElement;@215be6bb, Thread[pool-1-thread-1,5,main]=[Ljava.lang.StackTraceElement;@4439f31e, Thread[Common-Cleaner,8,InnocuousThreadGroup]=[Ljava.lang.StackTraceElement;@5dfcfece, Thread[Finalizer,8,system]=[Ljava.lang.StackTraceElement;@23ceabc1}
```  

### その他のやったこと

- 今週は主にOSを再勉強してました(全然進んでないけど)
    - Ansibleは記憶になかったので苦労しました。
- うっかりメンテ中にyomitanにログインしようとしてロックされました(恥
    - 修正お願いしたいです。。
    - シス管のRedMineにrootパスワードでも落ちてないか探しましたが見つからず
```
kex_exchange_identification: read: Connection reset by peer
```

## これからの考察、予定
- 案:TopologyManagerを動かすスレッドには何かしら検知のための仕組みを作る?
- (まだ先)IntelJのファイルへの入力への検知はどう実装するのか?
- (ずっと先)編集ファイルの共有方法や編集されたファイルの識別なども実装する。大変。
 
## やりたいこと、その他
- Christie読み会
    - 別マシン同士の通信を実現した形跡が見つからないので実装してみたいところ。
    - RemoteTakeあたりな記憶だけどしっかり把握できてない。
- OS再勉強、割と時間がないので急ぎたいところ。
- 早起きする。