Xcodeで外部ソース(postgresql)をビルドする

この記事は【2017年1月6日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

PostgreSQLを少し触る機会があり,ソースも少し追っかけてみたい(が膨大で難しい。。)と思いデバッグ環境を構築することに。

ターミナルでgdbでステップ実行するのもあまり慣れていないので,Xcodeでと試した時のメモです。

環境

  • MacOS X 10.11.6
  • Xcode8.2.1
  • postgresql-9.5.5

作成手順

ソースコードジャンプ

まず適当に空のプロジェクトを作ります。

続いてソースコードなどをインデクシングしてジャンプできるようにダミーのターゲットを作成します。

続いてダミーのターゲットのCompile Sourcesでpostgresqlのsrcフォルダ下の.cファイルを追加します。Add Otherで,FinderのSearchに.cと打つとCソース一式を絞り込めます。(他に良い方法あれば教えて欲しいです。。)

すべてのソースを選択してxcodeのCompile Sourcesに表示されるまで少し時間がかかるかもしれません。

続いて,PROJECTのBuild Settingsで「User Header Search Paths」にpostgresqlのsrc/includeディレクトリを指定します。

これでソースにジャンプできるようになっているはず。

ステップ実行

続いてブレークポイントを貼ってステップ実行するための設定。

まず,TARGETSを追加してExternal Build Systemを選択します。

続いて実行ディレクトリを指定します。

次にEdit SchemeでPre-actions,Post-actionsのスクリプトを指定します。Pre-actionsではconfigureの実行,Post-actionsではmake installを実行しています。

あとはターゲットを実行します。上手くいくとprefixで指定したディレクトリに実行ファイル等一式が生成されているはずです。

続いて試しにinitdbを実行してみます。まずは,ターゲットを作ります。

続いてEdit Schemeでデバッグビルドした実行ファイルを選択します。

実行時の引数や環境変数を設定します。

以上を設定の上,ブレークポイントを適当な場所に貼ってターゲットinitdbを実行してみます。

指定した箇所でブレークできました!上手くいったようです。

プロセスにアタッチ

psqlで対話インターフェースを起動し,クエリを実行するところでブレークしてステップ実行してみます。

まずは,コンソールでpsqlを実行します。

続いてXcodeからプロセスにアタッチします。プロセスIDはpostgresで最新のプロセス番号になっていると思いますが,psでも確認しておきます。

以下のようなプロセスが見つかると思います。

IDが分かればXcodeでアタッチしてみます。

何も起こったように見えませんが,ポーズボタンを押してプログラムの実行を中断してみます。

するとデバッグコンソールに(lldb)と表示され入力待ち画面になります。

ここで,試しに関数exec_simple_queryにブレックポイントを貼ってpsqlを立ち上げたコンソールからselect 1;を実行してみます。

lldbからブレークポイントを張る場合は,以下のように入力します。

一応ブレークポイントを確認してみます。

これでselect 1;を実行すると,以下のようにブレークポイントで中断できました。

参考リンク

PostgreSQL全機能バイブル

新品価格
¥3,780から
(2017/1/6 22:20時点)

【企業経営理論】外部組織との連携と事業構造の再構築 メモ

この記事は【2017年1月5日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

今日は夕方から冷える1日だったなぁ。

さて,1月4日から仕事も始まっており少しずつペースが戻ってきているところ。

本日は,『外部組織との連携』について。

自社の経営資源だけでなく,外部資源も上手く活用しながら経営していく動きについて。

企業間連携のパターン

  • 垂直的統合
    • いわゆるバリューチェーンの上流下流における統合
    • 川下が販売で前方統合,川上が製造で後方統合
    • アップルはこっちかな?
  • 水平的統合
    • シナジー効果の期待,範囲の経済
    • 同種の事業分野など
  • 多角的統合

M&A(Mergers & Acquisitions)

  • いわゆるエムアンドエー,合併吸収のこと
  • M&Aには,狭義と広義がある
  • 形態
    • 合併,株式買収,事業譲渡,合弁,アライアンス(ゆるい提携,バーチャル組織)
  • 手法
    • TOB(よくニュースで聞く株式公開買い付けのこと)
    • LBO(資産を担保に資金借り入れ)
    • MBO(部門買い取り)
    • MBI(外部マネージメントチームが買い取り)
  • 友好的,敵対的
  • 買収防止策
    • ポインズンピル(買ったものの株取得割合は低下)
    • クラウンジェル(価値を下げて魅力的でなくする)
    • ゴールデンパラシュート(多額の退職金を仕掛けておく)
    • ホワイトナイト(助けを求める)
  • プラットフォームビジネス
    • ソーシャルゲームやスマフォアプリのような買い手と売り手の場を提供する

産学連携

  • 産業界と学術界の連携
  • 産業界は技術源を大学に求めコア分野に集中でき,大学は研究成果の実用化さらには新たな研究資金の獲得が可能
  • TLO
    • 技術移転を行う機関

産業クラスタ

  • ポーターのダイアモンドモデル
  • 土地や天然資源だけでなく知識ベースの生産要素が重要
  • シリコンバレーが代表例

事業の再構築

  • リストラクチャリング
    • 本業強化と多角化
  • アウトソーシング
    • 外部資源を活用
    • 外部の専門性やスキルを活用し自社はコア分野に集中
    • コスト削減にもつながる

 

中小企業診断士 最速合格のための スピードテキスト (1) 企業経営理論 2017年度

新品価格
¥2,592から
(2017/1/5 20:33時点)

【企業経営理論】技術経営(Management Of Technology) メモ

この記事は【2017年1月4日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

今日は,技術経営(MOT)について。MOTは,「Management Of Technology」の略。

  • 技術経営
    • 研究開発
      • 基礎研究
        • 理論的・実験的
      • 応用研究
        • 基礎研究の実用化
      • 開発
        • 基礎研究や応用研究で得た知識を利用して製品やサービスとして具現化
      • コア技術戦略
        • 技術のフォーカスと外部環境への変化を両立
      • コンカレントエンジニアリング
        • リードタイムの短縮,問題の早期発見,各機能分野との連携など
    • イノベーション
      • プロダクト
      • プロセス
      • 持続的
      • 破壊的
      • 技術のS字カーブ
        • 不連続
        • 後発技術による追い越し
      • イノベージョンのジレンマ
        • 持続的イノベーションから抜け出せず,破壊的イノベーションを起こしづらい
    • 製品アーキテクチャ
      • モジュール型
        • 個別最適,パソコンとか
      • オープンアーキテクチャ戦略
        • インターフェース公開
      • インテグラル型
        • 全体最適,自動車とか
      • 顧客機能の頭打ち
        • オーバースペック
    • デファクトスタンダード
      • 業界標準,PC-ATとか?
    • ネットワーク外部性
      • 同一ネットワークに参加するメンバーの効用,多ければ強い
    • 知的財産戦略
      • 特許などで技術保護
      • ライセンスフィー
    • ベンチャー企業マネージメント
      • シード期,スタートアップ期,急成長期,安定成長期
      • 企業体力がないので綿密か計画と実態把握,管理が重要
      • 死の谷,ダーウィンの海
        • 研究成果が実り,市場に展開されるまでに壁がある
      • 資金調達
        • ベンチャーキャピタル
        • 投資事業組合
        • ビジネスエンジェル(エンジェル投資家?)
        • スイートマネー(親族,知人とか)
        • 金融機関融資(銀行とか)
        • 公的な資金支援
        • クラウドファウンディング?はなんだろう?
      • 社内ベンチャー
        • 社外でなくとも社内でサポートをうけられる
        • コーポレートベンチャリング
          • アイデアコンテストとかでアントレプレナーを集めて支援するのもここに入る?

【企業経営理論】競争戦略 メモ

この記事は【2017年1月2日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

年末年始は家族団欒の時間を過ごし英気を養う。久しぶりにゆっくりとした時間を過ごすことができたので良かった。

さて,ゆっくり休んだ後は再び従来の学習サイクルに戻さないと(汗

前回までの流れは,経営戦略の全体像からの経営戦略の構成要素や環境分析,経営管理,そして成長戦略について学んだ。SBUでのPPMを使った分析による経営資源の配分バランスについて見た続きで,今回は『競争戦略』について。

  • ポーターの競争戦略
    • 5フォースモデル
      • 新規参入
      • 買い手(広範囲な流通,販売網など)
      • 売り手(特定部品や特許)
      • 代替品
      • 競争業者
    • 競争回避戦略
      • 参入障壁
        • 新規参入の障壁を高くする
      • 移動障壁
        • 戦略グループの移動障壁を高くする
        • 移動の妨げとなる力学の利用
    • 3つの競争戦略
      • 差別化
      • コストリーダーシップ
      • 集中
    • バリューチェーン(価値連鎖)
      • 購買〜流通・販売までの価値連鎖
      • 主活動(直接販売に関わる活動)と支援活動(主活動の支援,人事やシステム・労務とかはこっち)
    • 競争地位別戦略
      • リーダー(戦略:非価格対応,パイの拡大,差別化無効化(同質化政策))
      • チャレンジャー(戦略:差別化)
      • フォロワー(戦略:低価格,リーダー追随)
      • ニッチャー(集中,特定セグメント)

内部の経営資源に注目した競争優位の考え方,アプローチとして以下がある。

  • リソースベースドビュー
    • 「有形+無形=ケイパビリティ」は資源の一種

ポジショニングアプローチと相互補完の関係にある。

経営戦略論は,大きく以下の2つに大別される。

  • 分析型アプローチ
    • 計画→実行
    • 分析麻痺症候群に陥らないように注意
    • 現場との乖離,試験的でイノベーティブな挑戦の阻害
  • プロセス型アプローチ
    • 不確実性の高い現代において,予期せぬ事象はつきもの
    • 予期せぬ事象を学習の機会とプラスに考え,プロセス改善を行なっていく(創発戦略)

2016 大晦日は金比羅山にお参り

この記事は【2016年12月31日】と作成から2年以上経っているため、記事の内容が古い可能性があります。最新の情報を合わせてご確認されることを推奨いたします。

今日は2016年12月31日,大晦日。

いつもは家でのんびり過ごすところですが,今回は金比羅山にお参りし800段の階段を登り下りしていい運動をしてきました。久々の運動でいい汗をかきました。参拝される方,寒い時期ではありますが,登り下りではいい汗をかきますので,あったかくしつつも脱ぎ着しやすい格好で行かれることをお勧めします。

昨年も参拝された方のお話しでは,前年は人が少なかったらしいのですが,今年の大晦日は前年よりもやや人が多かったようです。混雑というほどではないですが,ツアー客の方もそこそこいて階段も常に人が登り下りしていてすれ違うような感じでした。

参拝の通りにあるお店は年始に向けての準備も整って,参拝客をお迎えしているような感じでした。

さて,私はというと,今年は人生にとっても結構大きな変化のあった年でした。生活環境も変わり,職場も変わり。長く慣れた環境を離れるのは勇気のいることで,色々と悩んだ結果の決断でしたが,来年はその決断が良かったと思えるような年にしたいなと。今までお世話になった方への感謝も忘れず,自分自身もっと成長していきたいし,少しでも周りの人たちに良い影響を与えられるような人間になれたらという思いで,今年を締めつつ来年を迎えたいと思います。

金比羅山の参拝ですが,当日の天気は良く,山頂からの讃岐平野の景色は綺麗でした。くもりもほとんどなく,非常に見通しの良い天候でした。この景色を見ながら,来年に向けて決意を新たに頑張りたいと思いました。

スポンサーリンク